2012-08-03 80 views
0

我正在制作一个应用程序,要求在一个屏幕上隐藏状态栏,但是当用户返回到上一个屏幕时,我希望它恢复。我使用的是[[UIApplication sharedApplication] setStatusBarHidden:NO];,它可以工作,但是当我打开它时,它会重叠导航栏并使应用程序降低速度以至于崩溃。还有什么我可以使用,或者我只是没有正确使用代码?如何正确恢复状态栏?

回答

0

我从DetailView移动到FlipView似乎有一个类似的问题 - 我想隐藏状态栏来显示黑色背景上的照片 - 然后返回到DetailView。关键是让代码恢复隐藏在FlipView的viewWillDisappearAnimated方法中,而不是在ViewDidUnload方法或DetailView控制器中的方法中。我想这会重置所有之前您返回到您以前的视图。所以,我在我的FlipViewController代码为:

- (void)viewDidLoad 
{ 
    [[UIApplication sharedApplication] setStatusBarHidden:YES]; 
    // other application-specific code 
} 

- (void)viewWillDisappear:(BOOL)animated 
{ 
    [[UIApplication sharedApplication] setStatusBarHidden:NO]; 
} 

希望这有助于。