iOS7的statusBar设置

iOS7以前,设置statusBar的方式一般都是通过application的setStatusBarHidden方法来实现,这个方法是针对整个应用的,一旦状态更改了,影响到所有的viewController,而iOS9以后这个方法就被弃用了。

代替的方法是覆盖viewcontroller的prefersStatusBarHidden方法。

步骤如下:

1. 更改应用plist中的UIViewControllerBasedStatusBarAppearance 设置为Yes

2. 覆盖viewController的prefersStatusBarHidden方法,如果需要隐藏statusBar,就返回Yes,否则返回no。对比setStatusBarHidden来说,实现了viewController互相之间的设置不受影响。

3. 如果需要动态刷新statusBar的状态,需要手动调用viewController的setNeedsStatusBarAppearanceUpdate方法。

你可能感兴趣的:(iOS7的statusBar设置)