美文网首页
沉浸式状态栏导致华为手机虚拟按钮被遮挡的解决办法

沉浸式状态栏导致华为手机虚拟按钮被遮挡的解决办法

作者: androidfan | 来源:发表于2017-11-27 10:56 被阅读0次

    使用了沉浸式状态栏可以让应用给人浑然天成的感觉,是比较好的用户体验,从android 4.4 版本后才能使用城近视状态栏,具体表现是,4.4上是渐变色,5.0以后是全透明。

    效果如下:

    效果还是挺好的,那么怎么实现的呢?

    很简单,就几行代码就能搞定。

    我们只需要在基类BaseActivity的onCreate()方法中这样写:

    if(Build.VERSION.SDK_INT>= Build.VERSION_CODES.KITKAT) {

    getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);//透明状态栏

    getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);//透明底部导航栏

    }

    然后新建的Activity继承BaseActivity就行了。

    注意:布局文件里不能使用android:fitsSystemWindows="true",否则,状态栏会出现黑块。

    但是如果你使用的是华为手机或者谷歌亲儿子Nexus及pixel,那么你会发现一个问题,就是底部三个虚拟按钮被无情的遮挡了,像这样:

    WHT?那怎吗解决呢,很简单,因为我们再实现沉浸式的时候多写了一句话,

    getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);//透明底部导航栏

    就是这一句话了,这里我们把这句话去掉就会恢复正常了。

    相关文章

      网友评论

          本文标题:沉浸式状态栏导致华为手机虚拟按钮被遮挡的解决办法

          本文链接:https://www.haomeiwen.com/subject/xsprbxtx.html