本文介紹iOS7以后的狀態欄設置寶典
大概自iOS7以后狀態欄和導航欄好像穿同一條褲子了,給導航欄設置顏色,狀態啦顯示的顏色一樣
在操作之前 一定要先修改配置文件info.plist
AC8A1F95-7F48-4C6F-9676-2B752723CB30.png
View controller-based status bar appearance 設置為NO
1:設置導航欄和狀態欄同色
看圖1
1.png
代碼如下
// 設置顏色
#define TCOLOR(r, g, b, a) [UIColor colorWithRed:r/255.0f green:g/255.0f blue:b/255.0f alpha:a]
// 設置導航欄背景色
[[UINavigationBar appearance] setBarTintColor:TCOLOR(12, 73, 123, 1)];
可見設置了導航欄的顏色,那狀態欄自己就跟著導航欄的顏色進行改變。
2:分別設置導航欄和狀態欄的背景
從iOS7以后他們倆何為一頭,所以就添加一個替代的view來控制狀態欄
如圖2
2.png
代碼如下
/**
狀態欄顏色
*/
UIView *statusBarView = [[UIView alloc] initWithFrame:CGRectMake(0, -20, 320, 20)];
statusBarView.backgroundColor = TCOLOR(6, 6, 6, 1);
/**
* 更改狀態欄字體為白色 默認為黑色
*/
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];
/// 想navigation的navigationBar上添加狀態欄
[nav.navigationBar addSubview:statusBarView];
2:設置導航欄標題的顏色和字體
如圖1效果
1.png
/**
* 設置導航欄字體顏色
*/
NSDictionary * attriBute = @{NSForegroundColorAttributeName:[UIColor whiteColor],NSFontAttributeName:[UIFont systemFontOfSize:30]};
[nav.navigationBar setTitleTextAttributes:attriBute];
也可以添加"洲洲哥"的微信公眾號