dam*_*ian 26
To enable/disable them, as far as I know you simply have to edit the build.prop:
qemu.hw.mainkeys=0 (show on screen buttons)
Run Code Online (Sandbox Code Playgroud)
or
qemu.hw.mainkeys=1 (disable on screen buttons)
Run Code Online (Sandbox Code Playgroud)
If the line does not exist in your build.prop, add it at the bottom.
在没有底部导航栏的情况下拍摄屏幕截图的最简单方法是使用模拟器(AVD)并编辑其配置文件.
转到.android/avd/virtual-device.avd
然后编辑config.ini:
hw.mainKeys=yes
hw.keyboard=yes
Run Code Online (Sandbox Code Playgroud)
两者都应该设置为"是"
为了能够再次看到该栏,请将它们设置为"否".
但是,您无法永久隐藏它:
getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);
Run Code Online (Sandbox Code Playgroud)
此代码隐藏软键,直到用户与您的应用交互.这是故意以这种方式设计的,想象一下,你没有提供退出当前屏幕和隐藏theese键的任何手段,用户将被"困"在一个单向的死胡同里.
你可以在这里找到更多.
小智 6
getWindow().getDecorView().setSystemUiVisibility(
View.SYSTEM_UI_FLAG_LAYOUT_STABLE
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
| View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_FULLSCREEN
| View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY);
Run Code Online (Sandbox Code Playgroud)
在onCreate中使用此代码.但这要求api lv超过19.
小智 6
除了上面 Aykut Burak SAFAK 的回答之外,您还可以将他的代码放入onWindowFocusChanged事件中,以确保每当Activity获得焦点(例如解锁后)时,它都会保持全屏状态而没有软键状态。
@Override
public void onWindowFocusChanged(boolean hasFocus){
super.onWindowFocusChanged(hasFocus);
getWindow().getDecorView().setSystemUiVisibility(
View.SYSTEM_UI_FLAG_LAYOUT_STABLE
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
| View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_FULLSCREEN
| View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
52106 次 |
| 最近记录: |