在我的iOS视频应用中,状态栏隐藏在一些视图控制器中。我已经使用以下代码做到了这一点。
[[UIApplication sharedApplication] setStatusBarHidden:YES];
它适用于iOS 5和iOS 6,但不适用于iOS 7。 我在特定的视图控制器中尝试了这个,
Eg:
-(BOOL)prefersStatusBarHidden { return YES; }
它工作得很好,但是我不能在父视图控制器中再次显示状态栏。
在我的iOS视频应用中,状态栏隐藏在一些视图控制器中。我已经使用以下代码做到了这一点。
[[UIApplication sharedApplication] setStatusBarHidden:YES];
它适用于iOS 5和iOS 6,但不适用于iOS 7。 我在特定的视图控制器中尝试了这个,
Eg:
-(BOOL)prefersStatusBarHidden { return YES; }
它工作得很好,但是我不能在父视图控制器中再次显示状态栏。
当前回答
从UIKit > UIApplication.h:
// Setting statusBarHidden does nothing if your application is using the default UIViewController-based status bar system.
@property(nonatomic,getter=isStatusBarHidden) BOOL statusBarHidden;
- (void)setStatusBarHidden:(BOOL)hidden withAnimation:(UIStatusBarAnimation)animation NS_AVAILABLE_IOS(3_2);
所以应该将基于视图控制器的状态栏外观设置为NO
其他回答
从UIKit > UIApplication.h:
// Setting statusBarHidden does nothing if your application is using the default UIViewController-based status bar system.
@property(nonatomic,getter=isStatusBarHidden) BOOL statusBarHidden;
- (void)setStatusBarHidden:(BOOL)hidden withAnimation:(UIStatusBarAnimation)animation NS_AVAILABLE_IOS(3_2);
所以应该将基于视图控制器的状态栏外观设置为NO
为了更好地理解,添加一些带有评论的照片:
App在任何更改前
在名为“支持文件”的Project Navigator文件夹中找到,然后单击*。plist文件
之后你会得到不同的设置你的应用程序显示。你需要添加2个键UIStatusBarHidden和UIViewControllerBasedStatusBarAppearance。你可以简单地点击+按钮
按下+键后,你可以选择其中一个键开始打字。
正确的版本:
最后,在应用这些变化之后:
另外,你可以在这里找到另一种解决方案
你应该将这个值添加到plist: "View controller-based status bar appearance"并将其设置为"NO"。
在Plist中添加以下属性。
Status bar is initially hidden = YES
View controller-based status bar appearance = NO
现在状态栏将被隐藏。
在iOS7中隐藏状态栏:
打开你的plist-file,然后添加一个添加一行名为“基于视图控制器的状态栏外观”,并将其值设置为NO。