iOS 修改狀態列preferredStatusBarStyle不執行問題

來源:互聯網
上載者:User

標籤:ima   問題   black   sel   pre   nav   images   status   har   

一、在老版本的iOS中,狀態列永遠都是白色風格。而在iOS 7中,我們可以修改每個view controller中狀態列的外觀。通過UIStatusBarStyle常量可以指定狀態列的內容是暗色或亮色。預設情況下,狀態列的顯示是暗色。也就是說,狀態列上的時間、電池指標和Wi-Fi訊號顯示為暗色。如果導覽列中使用暗色為背景,那麼看起來的效果如所示:

如這種情況下,我們可能希望將導覽列的風格修改為亮色。這裡有兩個方法可以實現。在iOS 7中,我們可以在每個view controller中overridingpreferredStatusBarStyle:方法,如下所示:

- (UIStatusBarStyle)preferredStatusBarStyle {         return UIStatusBarStyleLightContent; }

PS:此法的只有在設定了以下代碼才會被調用(對於preferredStatusBarStyle不執行問題):

[self.navigationController.navigationBar setBarStyle:UIBarStyleBlack];

上面代碼的效果如所示:

二、在iOS 7中,通過上面的方法來修改狀態列風格非常的棒。另外,我們也可以使用UIApplication的statusBarStyle方法來設定狀態列,不過,首先需要停止使用View controller-based status bar appearance。在project target的Info tab中,插入一個新的key,名字為View controller-based status bar appearance,並將其值設定為NO。

然後就可以使用下面的代碼來設定狀態列風格了:

[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];

  

iOS 修改狀態列preferredStatusBarStyle不執行問題

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.