MUI-解決iOS原生側(cè)滑返回時(shí)狀態(tài)欄出現(xiàn)白色條的問(wèn)題(設(shè)置沉浸式狀態(tài)欄)

上篇文章實(shí)現(xiàn)了iOS原生側(cè)滑返回功能后,會(huì)有一個(gè)問(wèn)題:側(cè)滑的時(shí)候,狀態(tài)欄的顏色不會(huì)漸變,頂部出現(xiàn)一個(gè)白色的條非常不美觀,如下圖所示:
原創(chuàng)文章,歡迎轉(zhuǎn)載.轉(zhuǎn)載請(qǐng)注明出處: http://www.itdecent.cn/p/90f910db9545

分析原因:

由于我們項(xiàng)目的導(dǎo)航欄統(tǒng)一都是純白色的,不側(cè)滑的時(shí)候感覺(jué)挺完美。嘗試設(shè)置為其他顏色就會(huì)發(fā)現(xiàn)問(wèn)題,如下圖:



狀態(tài)欄顏色默認(rèn)是純白色的,即使使用下面的代碼:

mui.plusReady(function() {
    plus.navigator.setStatusBarStyle("light");//設(shè)置狀態(tài)欄字體為白色
    plus.navigator.setStatusBarBackground("#ea6f5a");//設(shè)置狀態(tài)欄背景顏色和導(dǎo)航欄背景色一致
});

將態(tài)欄的顏色設(shè)置為和導(dǎo)航欄的一樣,側(cè)滑的時(shí)候也會(huì)出現(xiàn)和導(dǎo)航欄顏色一樣的條:


總結(jié):MUI默認(rèn)將狀態(tài)欄和導(dǎo)航欄分離,側(cè)滑時(shí)只漸變導(dǎo)航欄,而此時(shí)的狀態(tài)欄并不屬于導(dǎo)航欄,就出現(xiàn)了上面的問(wèn)題。解決的辦法就是將狀態(tài)欄和導(dǎo)航欄融為一體,即設(shè)置沉浸式狀態(tài)欄。

設(shè)置沉浸式狀態(tài)欄

參考manifest配置指南:雙擊項(xiàng)目中的manifest.json文件找到"plus"為其添加如下內(nèi)容:

"statusbar": {
    "immersed": "supportedDevice",//沉浸式狀態(tài)欄情況(none-非沉浸式, supportedDevice-在支持沉浸式的設(shè)備上設(shè)置為沉浸式,suggestedDevice-在建議的設(shè)備上設(shè)置為沉浸式)
    "style": "light"  //設(shè)置狀態(tài)欄字體顏色(light-白色,dark-黑色)
}

設(shè)置為之后的效果如下:


注意:上面的效果是使用iOS原生導(dǎo)航欄下的效果,如果使用MUI的導(dǎo)航欄會(huì)出現(xiàn)高度只有44的問(wèn)題,安卓和iOS都會(huì)有這個(gè)問(wèn)題,正常導(dǎo)航欄的高度是64,除了iPhone X系列手機(jī)為88之外(這里所說(shuō)的導(dǎo)航欄包括狀態(tài)欄和標(biāo)題欄)。解決這個(gè)問(wèn)題可以參考我的下一篇文章:MUI-設(shè)置沉浸式狀態(tài)欄后MUI導(dǎo)航欄的高度問(wèn)題

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容