android 沉浸式状态栏导致布局被遮挡,沉浸式状态栏导致华为手机虚拟按钮被遮挡的解决办法...
使用了沉浸式狀態(tài)欄可以讓?xiě)?yīng)用給人渾然天成的感覺(jué),是比較好的用戶體驗(yàn),從android 4.4 版本后才能使用城近視狀態(tài)欄,具體表現(xiàn)是,4.4上是漸變色,5.0以后是全透明。
效果如下:
效果還是挺好的,那么怎么實(shí)現(xiàn)的呢?
很簡(jiǎn)單,就幾行代碼就能搞定。
我們只需要在基類BaseActivity的onCreate()方法中這樣寫(xiě):
if(Build.VERSION.SDK_INT>= Build.VERSION_CODES.KITKAT) {
getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);//透明狀態(tài)欄
getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);//透明底部導(dǎo)航欄
}
然后新建的Activity繼承BaseActivity就行了。
注意:布局文件里不能使用android:fitsSystemWindows="true",否則,狀態(tài)欄會(huì)出現(xiàn)黑塊。
但是如果你使用的是華為手機(jī)或者谷歌親兒子Nexus及pixel,那么你會(huì)發(fā)現(xiàn)一個(gè)問(wèn)題,就是底部三個(gè)虛擬按鈕被無(wú)情的遮擋了,像這樣:
WHT?那怎嗎解決呢,很簡(jiǎn)單,因?yàn)槲覀冊(cè)賹?shí)現(xiàn)沉浸式的時(shí)候多寫(xiě)了一句話,
getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);//透明底部導(dǎo)航欄
就是這一句話了,這里我們把這句話去掉就會(huì)恢復(fù)正常了。
總結(jié)
以上是生活随笔為你收集整理的android 沉浸式状态栏导致布局被遮挡,沉浸式状态栏导致华为手机虚拟按钮被遮挡的解决办法...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: iOS/Android 微信及浏览器中唤
- 下一篇: C#实现微信自动回复机器人和微信支付