【Android】解决安卓在隐藏系统栏后usb鼠标被隐藏的问题
解决安卓在隐藏系统栏后usb鼠标被隐藏的问题
- 问题
- 复现
- 解决方案
问题
在正常情况下,或者fullScreen情况下,插入的usb鼠标都会被显示,显示在屏幕中。
区别在于fullscreen时,stutasBar和navigationBar都会被隐藏,此时usb鼠标的显隐都是正常的。
这个控制我们是否是全屏显示,配置在主题的xml中。
<item name="android:windowFullscreen">false</item>
复现
当我们设置显示状态栏,同时隐藏导航栏时候,usb的鼠标会被系统隐藏。
此时鼠标在顶栏,但是被隐藏。需要点击鼠标左键,才会显示我的鼠标出来。至于为什么,估计是鼠标被作为navigationBar中的内容。
具体是为什么,不太清楚。
解决方案
// 沉浸式框架:https://github.com/gyf-dev/ImmersionBarimplementation("com.geyifeng.immersionbar:immersionbar:3.2.2")
在Activity的onCreate的setContentView之前
ImmersionBar.with(this)// 默认状态栏字体颜色为黑色.statusBarDarkFont(true).fitsSystemWindows(true)// 指定导航栏背景颜色.navigationBarColor(android.R.color.white)// 状态栏字体和导航栏内容自动变色,必须指定状态栏颜色和导航栏颜色才可以自动变色.autoDarkModeEnable(true, 0.2f).init();
这下就正常了,状态栏字体也设置为了黑色。usb模式的鼠标也不会消失了。感谢开源!