当系统版本号高于iOS7.0,那么原来的隐藏状态栏方式就可能不好使了. 因为你要是用修改plist的方法实现的隐藏方法,还是管用的.
plist方法:key:Status bar is initially hidden value : YES 自从开启程序,状态栏就被隐藏了
key:View controller-based status bar appearance value : YES 进入程序后,状态栏被隐藏.(也就是欢迎画面 Default.png 时候显示状态栏)
代码方法:代码方法的缺点就是,不能隐藏欢迎画面的状态栏.因为开启欢迎画面的时候,app
Delegate还没有执行 didFinishLaunching.
优点是,可以在指定的ViewController里面显示状态栏,只需把代码的YES改为NO
1 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { 2 // Override point for customization after application launch. 3 if ([UIDevice currentDevice].systemVersion.floatValue < 7.0) { 4 [UIApplication sharedApplication].statusBarHidden = YES; 5 } 6 else if ([self respondsToSelector:@selector(setNeedsStatusBarAppearanceUpdate)]) 7 { 8 // iOS7及以上 9 [self prefersStatusBarHidden];10 //这个是更新状态栏的显示状态,只支持iOS7及以上,使用performSelector是为了不影响主线程的其他工作11 [self performSelector:@selector(setNeedsStatusBarAppearanceUpdate)];12 }13 return YES;14 }15 16 - (BOOL)prefersStatusBarHidden17 {18 return YES;//隐藏为YES,显示为NO19 }
原标题:iOS 隐藏状态栏
关键词:IOS