使用Xcode 6.x构建应用程序会自动隐藏横向(iPhone)中的状态栏。使用Xcode 5.x编译时,相同的应用程序不会这样做。
如何阻止应用程序将状态栏隐藏在横向方向?基本上,我怎么能禁用这个"超级棒的" Apple / Xcode的特点是我的喉咙被推倒了?
P.S。我尝试使用以下代码更新视图控制器,但它没有帮助。
- (BOOL)prefersStatusBarHidden {
return NO;
}
答案 0 :(得分:17)
最佳解决方案
这基本上是一个两步过程:
1)。在项目的Info.plist文件中将“查看基于控制器的状态栏外观”设置为NO
。
2)。使用以下代码将状态栏隐藏状态强制设置为NO
中的application:didFinishLaunchingWithOptions:
:
[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationNone];
[[UIApplication sharedApplication] setStatusBarHidden:NO withAnimation:UIStatusBarAnimationNone];
而且,瞧!
注意:使用上面的setStatusBarHidden:withAnimation:
语句来强制状态栏隐藏状态非常重要。
答案 1 :(得分:1)
我正在使用
#define IS_IOS8 SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"8.0")
-(void)willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration{
[super willAnimateRotationToInterfaceOrientation:toInterfaceOrientation duration:duration];
if (IS_IOS8){
[[UIApplication sharedApplication] setStatusBarHidden:NO];
}
}
答案 2 :(得分:0)
在 Info.plist
中将“查看基于控制器的状态栏外观”设置为 YES然后将以下代码放在所需的视图控制器中:
- (BOOL)prefersStatusBarHidden {
return NO;
}