当屏幕在隐藏状态栏和显示状态栏之间转换时,有没有人遇到过将自定义背景导航栏移到顶端的问题?
问题是调试版本不会发生这个问题,但它确实发生在版本构建中。我真的很困惑,因为我没有使用任何条件来进行UI行为。
此外,仅当应用程序以“全屏”状态进入前台模式时才会发生这种情况。然后我从全屏状态切换到非全屏状态,问题就出现了。
更新:无论我是否使用自定义背景,都会出现此问题。
我正在使用在iOS 4.3.3上运行的iOS 4.3 SDK。
我这样做了这样的过渡:
UIWindow *window = [[UIApplication sharedApplication] firstWindow];
[window addMoveInTransitionWithDuration:0.5 subtype:kCATransitionFromBottom];
[self.fullScreenViewController.view removeFromSuperview];
[self presentNonFullScreenViewAnimated:NO];
这是第一个Windows方法:
- (UIWindow *)firstWindow
{
if ([self.windows count] > 0)
return [[self windows] objectAtIndex:0];
return [self keyWindow];
}
这是nowNonFullScreenViewAnimated:方法
- (void)presentNonFullScreenViewAnimated:(BOOL)animated
{
[[UIApplication sharedApplication] setStatusBarHidden:NO];
[self.navigationController setNavigationBarHidden:NO animated:NO];
NonFullScreenViewController *viewController = [[NonFullScreenViewController alloc] init];
[self.navigationController pushViewController:viewController animated:animated];
[viewController release];
}