iOS狀態(tài)欄frame計算問題的實現(xiàn)
我們知道除了iPhoneX以外的設備導航欄默認高度都是20,當然蘋果也為我們提供了計算狀態(tài)欄frame的方法:
[[UIApplication sharedApplication] statusBarFrame];
這個方法在正常情況下返回的狀態(tài)欄高度也是20,但當正在通話時,或者后臺有APP正在使用定位功能時,頂部會出現(xiàn)兩種提示條:
正在通話.png
后臺有APP使用定位.jpeg
當頂部有這兩種提示條出現(xiàn)時,上面的statusBarFrame方法返回的狀態(tài)欄高度就變成了40,在手動更改頂部約束的時候就會出現(xiàn)問題,最后沒找到解決方法,只能手動改回20,感覺是有那么點low。
if (iPhoneX) {//x上不做任何改變 return rectStatus.size.height + rectNav.size.height; } else { if (rectStatus.size.height == 40) {//頂部有導航或者電話條時,狀態(tài)欄高度系統(tǒng)方法計算錯誤,手動置為20 CGFloat fStatusBarHeight = 20; return fStatusBarHeight + rectNav.size.height; } else { return rectStatus.size.height + rectNav.size.height; } }
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
- iOS中封裝.framework及使用的方法詳解
- iOS中.a和.framework靜態(tài)庫的創(chuàng)建與.bundle資源包的使用詳解
- ios 不支持 iframe 的完美解決方法(兼容iOS&安卓)
- IOS 靜態(tài)庫和Framework區(qū)別
- IOS 圖文混排(CoreText.framework)詳解及實例
- iOS的XMPPFramework簡單介紹(實現(xiàn)及時通信)
- iOS10語音識別框架SpeechFramework應用詳解
- iOS10 App適配權(quán)限 Push Notifications 字體Frame 遇到的問題
- IOS上iframe的滾動條失效的解決辦法
- iOS制作framework靜態(tài)庫圖文教程
相關(guān)文章
關(guān)于iOS GangSDK的使用 為App快速集成社群公會模塊
這篇文章主要介紹了iOS GangSDK的使用為App快速集成社群公會模塊功能的實現(xiàn)過程。2017-11-11iOS 實現(xiàn)簡單的加載等待動畫示例(思路與實現(xiàn))
本篇文章主要介紹了iOS 實現(xiàn)簡單的加載等待動畫示例(思路與實現(xiàn)),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-05-05實例解析iOS應用多線程開發(fā)中NSthread類的用法
這篇文章主要介紹了iOS應用多線程開發(fā)中NSthread類的用法,代碼基于傳統(tǒng)的Objective-C,NSthread類需要的朋友可以參考下2016-02-02ios開發(fā):一個音樂播放器的設計與實現(xiàn)案例
本篇文章主要介紹了ios開發(fā):一個音樂播放器的設計與實現(xiàn)案例,具有一定的參考價值,有需要的小伙伴可以參考下。2016-11-11詳解iOS App中UIPickerView滾動選擇欄的添加方法
UIPickerView組件在應用中選擇地區(qū)等方面的運用非常常見,能夠提供多列的選擇項,下買呢我們就來詳解iOS App中UIPickerView滾動選擇欄的添加方法2016-05-05