iOS 7 状态栏隐藏与众不同之处 - 项目设置和代码设置的用途不同
太阳火神的美丽人生 (http://blog.csdn.net/opengl_es)
本文遵循“署名-非商业用途-保持一致”创作公用协议
转载请保留此句:太阳火神的美丽人生 - 本博客专注于 敏捷开发及移动和物联设备研究:iOS、Android、Html5、Arduino、pcDuino,否则,出自本博客的文章拒绝转载或再转载,谢谢合作。
在 iOS 7 上,有两种途径来隐藏状态栏
第一种途径,在项目的 Info 信息中增加或修改以下三项,并设置相应的值即可达到预期目的:
Status bar is initially hidden = YES
UIStatusBarHidden~ipad = YES
View controller-based status bar appearance = NO
由于我是做的针对Ipad的项目,所以其中有一项 UIStatusBarHidden~ipad = YES 需要设置,否则也不会起作用。
补充:
新建的Ipad工程中不添加 UIStatusBarHidden~ipad 也是可以的。
Status bar is initially hidden : 只管应用刚启动时,状态栏是否显示;
View controller-based status bar appearance :负责视图控制器中视图是否带有状态栏;
- (BOOL)prefersStatusBarHidden { return YES; }
prefersStatusBarHidden 只管视图控制器的视图是否有状态栏;
prefersStatusBarHidden => YES这时视图控制器的状态栏是隐藏的;
prefersStatusBarHidden => NO
prefersStatusBarHidden => NO
在 iOS 7 之前,也有以上两种途径来隐藏状态栏,但方法不同,
第一种途径,只需要一个 Status bar is initially hidden = YES 即可;
第二种途径,需要通过应用实例调用设置状态栏的方法,如下:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { // 设置状态栏隐藏 [[UIApplication sharedApplication] setStatusBarHidden:YES]; return YES; }