2012-08-08 287 views
21

有沒有辦法隱藏時,應用程序的啓動圖像顯示,然後將其帶回在狀態欄? 我的應用程序有一個黑色的狀態欄,在啓動圖像上顯示的是灰色的。隱藏狀態欄

有沒有解決方案?

回答

44

使用此代碼隱藏狀態欄:

的ObjectiveC:

[[UIApplication sharedApplication] setStatusBarHidden:YES 
withAnimation:UIStatusBarAnimationSlide]; 

斯威夫特:

UIApplication.sharedApplication().setStatusBarHidden(true, withAnimation: .Slide) 

如果你不需要在一開始的狀態欄。與YES

Status bar is initially hidden 

:在你的信息plist文件添加此設置UIStatusBarHidden

使用此代碼的應用程序的任何地方,以顯示該特定視圖控制器的狀態欄

的ObjectiveC:

[[UIApplication sharedApplication] setStatusBarHidden:NO withAnimation:UIStatusBarAnimationSlide]; 

斯威夫特:

UIApplication.sharedApplication().setStatusBarHidden(false, withAnimation: .Slide) 
+0

另一件需要注意的事情是UIViewController的'wantsFullScreen'屬性。 – Moshe 2012-08-08 15:21:59

+1

把你粘貼的'UIApplication'代碼放在哪裏最好的地方在哪裏? – syntagma 2012-09-07 07:32:57

+0

我把它放在啓動中,並且我擁有所有視圖控制器來擴展基本控制器。我有一個故事板和一個主要故事板登錄。我的基本控制器檢測故事板類型,並且如果登錄類型I在視圖加載中進行此調用。把這個電話放在你的appdelegate:didlaunch中,並且也放在你的基本控制器的viewdidload中(或者如果你想輸入很多的視圖控制器) – 2013-03-22 14:18:15

12

只要定義在plist文件一鍵解決您的問題

enter image description here

編碼快樂:)

+2

不幸的是,這使得我的整個應用程序全屏。雖然我只希望啓動圖像全屏。我試圖在viewDidLoad中放置setStatusBarHidden:NO,但狀態欄與視圖重疊:( – 2012-08-08 13:04:06

+0

謝謝,它解決了我的問題。:) – 2017-02-23 17:59:33

+0

謝謝...!就這樣!!! :P很容易! – 2017-12-31 09:23:07

2

添加以下關鍵to info.plist:

「狀態欄最初隱藏」並選擇「是」作爲值。

+0

不,我想把它提起來,而不是永遠隱藏它。我該怎麼做? – 2012-08-08 15:16:51

+0

@SergiusGee請參閱上面的我的回答。 – 2013-10-01 14:34:21

14

開始,您可以在Info.plist文件中添加此項:status bar is initially hidden=YES

然後在應用程序委託,加入這一行的application:didFinishLaunchingWithOptions:方法:

[[UIApplication sharedApplication] setStatusBarHidden:NO]; 
+2

不起作用。狀態欄與視圖重疊。 – 2013-04-27 03:27:20

4

返回回:

- (void)applicationDidFinishLaunching:(UIApplication *)application { 
    // Override point for customization after app launch 

    [[UIApplication sharedApplication] setStatusBarHidden:NO]; 
}