내 탐색 표시 줄과 상태 표시 줄 (슬라이드 위로 애니메이션)을 숨기려고하고 있는데 문제가 있습니다.UINavigationBar 및 상태 표시 줄 문제 숨기기
상태 표시 줄이 보이면 0 점 (x : 0)에있는 모든 요소의 원점은 상태 표시 줄 바로 아래를 의미합니다. 그러나 상태 표시 줄이 숨겨지면 0 (x : 0) 지점이 새 공간에 맞게 업데이트되고 0 (x : 0)은 화면의 절대 상단을 의미합니다.
나는 상태 표시 줄을 숨기고 가로로 회전 할 때 뷰 autosizes 및 모든 상태 표시 줄의 공간을 사용하는 이동, 내 애니메이션 오프가 발생한다 :
if (![[UIApplication sharedApplication] isStatusBarHidden]) {
// Change to fullscreen mode
// Hide status bar and navigation bar
[[UIApplication sharedApplication] setStatusBarHidden:YES
withAnimation:UIStatusBarAnimationSlide];
[UIView animateWithDuration:animationDuration animations:^{
navBar.frame = CGRectMake(navBar.frame.origin.x,
-navBar.frame.size.height-20,
navBar.frame.size.width,
navBar.frame.size.height);
} completion:^(BOOL finished) {
[navBar setHidden:TRUE];
}];
} else {
// Change to regular mode
// Show status bar and navigation bar
[navBar setHidden:FALSE];
[[UIApplication sharedApplication] setStatusBarHidden:NO
withAnimation:UIStatusBarAnimationSlide];
[UIView animateWithDuration:animationDuration animations:^{
navBar.frame = CGRectMake(navBar.frame.origin.x,
0,
navBar.frame.size.width,
navBar.frame.size.height);
} completion:^(BOOL finished) {
}];
}
어떤 제안?
편집 : 여기에 화면이 회전의 레이아웃 작업 후 모습입니다 : Image
이미지를 게시 할 수 있습니까? 그것은 당신의 문제가 무엇인지 명확하지 않습니다. "내 애니메이션을 던집니다"라고 말하면, 네가 말하는 navBar의 애니메이션인가? – applefreak