沉浸式状态栏/华为虚拟按键隐藏

19版本以上Android可以自己实现沉浸式状态栏的设置

1、创建values-v21文件夹(为了匹配低版本)
在style文件中设置:


设置了这两个属性状态栏就能设置为透明的。但是需要注意的是,这个设置不止可以改变状态栏,也能设置Navigation也就是底部的虚拟按键。如果界面底部有按钮的话会被虚拟按键遮挡住,要解决这个问题有多种途径:
  1、在布局的根节点设置android:fitsSystemWindows="true"
设置该属性后布局会自动根据底部虚拟按键高度进行适配,但是顶部的状态栏颜色不是完全的透明色。
  2、隐藏底部虚拟按键
进入界面后隐藏虚拟按键,点击屏幕后会显示两秒钟然后消失
测试机型:华为/7.0
<pre><code>
protected voidhideBottomUIMenu() {
//隐藏虚拟按键,并且全屏

if(Build.VERSION.SDK_INT > 11&& Build.VERSION.SDK_INT < 19) {
// lower api
View v = this.getWindow().getDecorView();
v.setSystemUiVisibility(View.GONE);
}else if(Build.VERSION.SDK_INT >= 19) {

//for new api versions.

View decorView = getWindow().getDecorView();

intuiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION

| View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY

| View.SYSTEM_UI_FLAG_FULLSCREEN;

decorView.setSystemUiVisibility(uiOptions);

}

}
</code></pre>

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容