沉浸式狀態欄是讓開發者尤爲是Android開發者很頭疼的問題,耗費開發者不少精力去校驗代碼在各個系統版本、各個機型上是否有效,今天這篇教程就跟你們分享優化初始化狀態欄沉浸式效果的方法。html
使用APICloud時,參照社區源碼,初始化狀態欄沉浸式,像這樣去編寫: apiready = function() { var header = api.fixStatusBar(header);api
} 有的開發者可能會遇到在Android機器上,導航欄有卡頓效果,仔細查找緣由,打開api.js 找到fixStatusBar方法,你會發現是api.js裏面根據手機型號等條件操做dom進行適配,方法內還使用了擴展的api對象獲取數據,因此該方法必須在apireader內執行,卡頓效果就是加載api對象的時間,apiready執行變晚。dom
下面這個方法分享給你們,幫助大家解決卡頓問題。優化
初始化程序時,index.html 文件中 apireader 內執行: function initHeaderH(){ api.setStorage('SYSTEMVERSION',api.systemVersion); api.setStorage('IOS7STATUSBARAPPEARANCE',api.iOS7StatusBarAppearance); }.net
在打開其餘window時,不在apiready內調用,提早處理沉浸式效果,能夠解決卡頓問題。 var header = $api.byId('header'); fixStatusBar_API(header); apiready = function() {};3d
寫到經常使用方法內: cdn
▌本文做者:APICloud 版主 yuyangzhao