最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

iOS開發(fā)技巧之狀態(tài)欄字體顏色的設(shè)置方法

 更新時間:2018年08月31日 08:32:18   作者:夢想家-mxj  
有時候我們需要根據(jù)不同的背景修改狀態(tài)欄字體的顏色,下面這篇文章主要給大家介紹了關(guān)于iOS開發(fā)技巧之狀態(tài)欄字體顏色的設(shè)置方法,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考借鑒,下面來一起看看吧

狀態(tài)欄的字體為黑色:UIStatusBarStyleDefault

狀態(tài)欄的字體為白色:UIStatusBarStyleLightContent

一、在info.plist中,將View controller-based status bar appearance設(shè)為NO

狀態(tài)欄字體的顏色只由下面的屬性設(shè)定,默認為白色:

// default is UIStatusBarStyleDefault
[UIApplication sharedApplication].statusBarStyle

解決個別vc中狀態(tài)欄字體顏色不同的辦法

1、在info.plist中,將View controller-based status bar appearance設(shè)為NO.

2、在app delegate中:

[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;

3、在個別狀態(tài)欄字體顏色不一樣的vc中

-(void)viewWillAppear:(BOOL)animated{
[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleDefault;
}

-(void)viewWillDisappear:(BOOL)animated
{
[super viewWillDisappear:animated];
[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;
}

二、在info.plist中,將View controller-based status bar appearance設(shè)為YES,或者沒有設(shè)置。

View controller-based status bar appearance的默認值就是YES。

如果View controller-based status bar appearance為YES。

[UIApplication sharedApplication].statusBarStyle 無效。

用下面的方法:

1、在vc中重寫vc的preferredStatusBarStyle方法。

-(UIStatusBarStyle)preferredStatusBarStyle
{

return UIStatusBarStyleDefault;
}

2、在viewDidload中調(diào)用: [self setNeedsStatusBarAppearanceUpdate];

但是,當vc在nav中時,上面方法沒用,vc中的preferredStatusBarStyle方法根本不用被調(diào)用。

原因是, [self setNeedsStatusBarAppearanceUpdate]發(fā)出后,

只會調(diào)用navigation controller中的preferredStatusBarStyle方法,

vc中的preferredStatusBarStyley方法跟本不會被調(diào)用。

解決辦法有兩個:

方法一:

設(shè)置navbar的barStyle 屬性會影響status bar 的字體和背景色。如下。

//status bar的字體為白色

//導(dǎo)航欄的背景色是黑色。

self.navigationController.navigationBar.barStyle = UIBarStyleBlack;

//status bar的字體為黑色

//導(dǎo)航欄的背景色是白色,狀態(tài)欄的背景色也是白色。

//self.navigationController.navigationBar.barStyle = UIBarStyleDefault;

方法二:

自定義一個nav bar的子類,在這個子類中重寫preferredStatusBarStyle方法:

MyNav* nav = [[MyNav alloc] initWithRootViewController:vc];

self.window.rootViewController = nav;

@implementation MyNav

- (UIStatusBarStyle)preferredStatusBarStyle

{

UIViewController* topVC = self.topViewController;

return [topVC preferredStatusBarStyle];

}

附:修改狀態(tài)欄的背景顏色 (牽扯到UIWindow的層級關(guān)系)

/*改變狀態(tài)欄的背景顏色,因為狀態(tài)欄的層級比較高,所以按照如下添加就可以出來效果*/
UIView* stateView = [[UIView alloc] initWithFrame:CGRectMake(0, -20, SCREEN_WIDTH, 20)];
[self.navigationController.navigationBar addSubview:stateView];
stateView.backgroundColor = [UIColor purpleColor];

備注: 因為在OC中,都應(yīng)該知道UIWindow有三個層級,如下:

UIKIT_EXTERN const UIWindowLevel UIWindowLevelNormal;
UIKIT_EXTERN const UIWindowLevel UIWindowLevelAlert;
UIKIT_EXTERN const UIWindowLevel UIWindowLevelStatusBar

它們層級的優(yōu)先級的值分別對應(yīng)的是:

UIWindowLevelNormal: 0

UIWindowLevelAlert: 1000

UIWindowLevelStatusBar:2000

(而且UIAlertView的層級優(yōu)先級為1996,UIActionSheet的層級優(yōu)先級為2001)
優(yōu)先級

總結(jié):

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關(guān)文章

  • iOS仿高德首頁推拉效果實例代碼

    iOS仿高德首頁推拉效果實例代碼

    這篇文章主要給大家介紹了關(guān)于iOS仿高德首頁推拉效果的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2021-11-11
  • iOS設(shè)置圓角陰影 避免離屏渲染

    iOS設(shè)置圓角陰影 避免離屏渲染

    這篇文章主要為大家詳細介紹了iOS設(shè)置圓角陰影,避免離屏渲染,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-04-04
  • iOS獲取當前連接的WiFi以及IP地址

    iOS獲取當前連接的WiFi以及IP地址

    本文主要介紹了iOS獲取當前連接的WiFi以及IP地址方法的核心代碼。具有很好的參考價值,下面跟著小編一起來看下吧
    2017-03-03
  • 詳解iOS多線程GCD的使用

    詳解iOS多線程GCD的使用

    Grand Central Dispatch (GCD)是Apple開發(fā)的一個多核編程的解決方法,本文給大家詳細介紹IOS中GCD的使用,需要的朋友參考下
    2016-03-03
  • 總結(jié)iOS開發(fā)中的斷點續(xù)傳與實踐

    總結(jié)iOS開發(fā)中的斷點續(xù)傳與實踐

    本文先從斷點續(xù)傳問題開始,介紹斷點續(xù)傳概述和原理。接著結(jié)合筆者調(diào)研中嘗試的 AFHTTPRequestOpeartion,簡單分析源碼。最后分別基于 NSURLConnection,NSURLSessionDataTask 和 NSURLSessionDownloadTask 去實現(xiàn)應(yīng)用重啟情況下的斷點續(xù)傳。下面一起來看看。
    2016-07-07
  • iOS實現(xiàn)自定義日期選擇器示例

    iOS實現(xiàn)自定義日期選擇器示例

    本篇文章主要介紹了iOS實現(xiàn)自定義日期選擇器示例,可以顯示年月日時分,非常具有實用價值,需要的朋友可以參考下。
    2017-02-02
  • iOS如何獲取手機的Mac地址

    iOS如何獲取手機的Mac地址

    這篇文章主要為大家詳細介紹了iOS獲取手機的Mac地址的多種方法,感興趣的小伙伴們可以參考一下
    2016-04-04
  • ios的手勢操作之UIGestureRecognizer淺析(推薦)

    ios的手勢操作之UIGestureRecognizer淺析(推薦)

    本篇文章主要介紹了ios的手勢操作之UIGestureRecognizer淺析,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。
    2016-12-12
  • 解析iOS10中的極光推送消息的適配

    解析iOS10中的極光推送消息的適配

    這篇文章主要介紹了解析iOS10中的極光推送消息的適配的相關(guān)資料,我們需要先安裝Xcode8.0版本,接下來本文分步驟詳細給大家介紹,需要的朋友可以參考下
    2016-09-09
  • iOS開發(fā)之(APNS)遠程推送實現(xiàn)代碼 附證書與真機調(diào)試

    iOS開發(fā)之(APNS)遠程推送實現(xiàn)代碼 附證書與真機調(diào)試

    這篇文章主要為大家詳細介紹了iOS開發(fā)之(APNS)遠程推送實現(xiàn)代碼,附證書與真機調(diào)試,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-09-09

最新評論

德江县| 包头市| 新余市| 鄂尔多斯市| 天镇县| 泽州县| 顺平县| 扎囊县| 连州市| 阿坝县| 遂昌县| 临漳县| 华亭县| 平安县| 临潭县| 区。| 左权县| 孝义市| 斗六市| 莫力| 醴陵市| 邮箱| 荆州市| 长乐市| 乌审旗| 丰城市| 南和县| 苍山县| 长治县| 泰安市| 外汇| 新沂市| 康马县| 景东| 锦屏县| 海盐县| 吴堡县| 沙田区| 莱西市| 顺义区| 阿拉尔市|