天天看點

iOS 隐藏 status bar

因為要做一個相機界面,要實作全屏,去除navi bar 和status bar,之前在網上找了很多方法,至少我測試過不行,或者不太滿足要求的。現在提供兩種經過自己測試可以的。本人在ios7+ 都測試過都可以。

1.實作整個app去除status bar 狀态,隻要在info.plist 頁面。用source code 方式打開,添加以下代碼。

<key>UIStatusBarHidden</key>
<true/>
<key>UIViewControllerBasedStatusBarAppearance</key>
<false/>
           

2.如果想要在某個controller 想實作隐藏status bar。而在其他頁面顯示status bar,可以用下面方法。

先在info.plist 裡面添加

<key>UIViewControllerBasedStatusBarAppearance</key>
	<false/>
           

再在需要隐藏status bar 的頁面,添加以下代碼,就可以做到隐藏了

- (void)viewWillAppear:(BOOL)animated
{
    [super viewWillAppear:animated];
    [[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationNone];
}

- (void)viewWillDisappear:(BOOL)animated
{
    [super viewWillDisappear:animated];
    [[UIApplication sharedApplication] setStatusBarHidden:NO withAnimation:UIStatusBarAnimationNone];
}