小編給大家分享一下如何解決iOS7里導航控制器中子控制器設置StatusBar狀態失效的問題,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
成都創新互聯服務項目包括普蘭網站建設、普蘭網站制作、普蘭網頁制作以及普蘭網絡營銷策劃等。多年來,我們專注于互聯網行業,利用自身積累的技術優勢、行業經驗、深度合作伙伴關系等,向廣大中小型企業、政府機構等提供互聯網行業的解決方案,普蘭網站推廣取得了明顯的社會效益與經濟效益。目前,我們服務的客戶以成都為中心已經輻射到普蘭省份的部分城市,未來相信會繼續擴大服務區域并繼續獲得客戶的支持與信任!
第一種方式:全局控制StatusBar
1. 在項目的Info.plist文件里設置UIViewControllerBasedStatusBarAppearance為NO。
2. 使用[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];方法設置顏色。
第二種方式:基于控制器的方式控制StatusBar
1. 在項目的Info.plist文件里設置UIViewControllerBasedStatusBarAppearance為YES。
2.在各個UIViewController里分別控制狀態欄的顏色和狀態。
通過在控制器里實現以下方法來設置狀態欄的顏色狀態
- (UIStatusBarStyle)preferredStatusBarStyle
- (BOOL)prefersStatusBarHidden
目前只有兩種顏色可選:
UIStatusBarStyleLightContent - 白色字
UIStatusBarStyleDefault - 黑色字
-------------------------
使用第二種方式的問題是,如果一個控制器在UINavigationController內,則上述的控制StatusBar的方法沒有被調用。
解決辦法:讓UINavigationController實現- (UIViewController *)childViewControllerForStatusBarStyle方法。將頂層的控制器返回。這樣就可以了。
可以寫一個UINavigationController的category,實現該方法。包含到項目里。
- (UIViewController *)childViewControllerForStatusBarStyle
{
return self.topViewController;
}
以上是“如何解決iOS7里導航控制器中子控制器設置StatusBar狀態失效的問題”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注創新互聯行業資訊頻道!
標題名稱:如何解決iOS7里導航控制器中子控制器設置StatusBar狀態失效的問題
URL分享:http://www.2m8n56k.cn/article16/pgcggg.html
成都網站建設公司_創新互聯,為您提供電子商務、、網站制作、網站策劃、ChatGPT、品牌網站建設
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:[email protected]。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯