前言
本菜雞最近在敲東西時,居然被小小的狀態(tài)欄難住了半小時,所以怒寫本博客
隱藏
-
全局隱藏
工程設(shè)置
設(shè)置之后會自動在Plist里面加入設(shè)置
也可以自己創(chuàng)建Plist條目 - Status bar is initially hidden 是剛進(jìn)入App時進(jìn)入LunchScreen時的狀態(tài)欄的設(shè)置
- View controller-based status bar appearance 是開始展示ViewController時的狀態(tài)欄是否一致
- 代碼隱藏
全局隱藏
將View controller-based status bar appearance設(shè)為NO
如果設(shè)置為YES則UIApplication.sharedApplication()就會無效
// OC
[UIApplication sharedApplication].statusBarHidden = YES;
// Swift
UIApplication.sharedApplication().statusBarHidden = true;
局部隱藏
override func prefersStatusBarHidden() -> Bool {
return true;
}
- (BOOL)prefersStatusBarHidden{
return YES;
}
局部隱藏的功能是進(jìn)入頁面后隱藏,如果沒勾上Hide Status bar 在進(jìn)入App時還是會有狀態(tài)欄,出現(xiàn)頁面時才會消失
字體樣式
-
工程設(shè)置
現(xiàn)在只有兩種狀態(tài),默認(rèn)為黑色就不說了下面是狀態(tài)欄字體白色設(shè)置
General Status Bar Style 設(shè)置成Light
工程設(shè)置
會自動創(chuàng)建Plist條目,也可以自己手動創(chuàng)建
General Status Bar Style 設(shè)置成Light
LightContent 白色字體
Default 黑色字體 代碼設(shè)置
全局設(shè)置
將View controller-based status bar appearance設(shè)為NO(理論同上)
// OC
[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;
// Swift
UIApplication.sharedApplication().statusBarStyle = UIStatusBarStyle.LightContent;
局部設(shè)置
// Swift
override func preferredStatusBarStyle() -> UIStatusBarStyle {
return UIStatusBarStyle.LightContent;
}
// OC
- (UIStatusBarStyle)preferredStatusBarStyle{
return UIStatusBarStyleLightContent;
}
最后建議一下如果決定全工程完全隱藏就使用工程配置,如果局部隱藏就用代碼不做工程設(shè)置,如果改來改去的話會容易發(fā)生不明錯誤...
另外一些navigationbar的風(fēng)格設(shè)置也會影響到狀態(tài)欄的樣式,以下幾篇博客中有寫到
附上其他幾篇寫的不錯狀態(tài)欄的博客:
http://www.tuicool.com/articles/vIbMry
http://my.oschina.net/shede333/blog/304560