Android7.1 如何在app中隐藏导航栏(虚拟按键)并且禁止其滑出
在 Android 7.1 及更高版本中,隐藏导航栏(虚拟按键)并禁止其滑出通常需要使用以下方法:
隐藏导航栏:
- 使用全屏模式隐藏导航栏,使应用占据整个屏幕空间,不显示系统导航栏。可以通过以下代码实现:java
View decorView = getWindow().getDecorView(); int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY; decorView.setSystemUiVisibility(uiOptions);
- 这段代码可以在
onCreate()
方法中调用,确保应用启动时隐藏导航栏。
- 使用全屏模式隐藏导航栏,使应用占据整个屏幕空间,不显示系统导航栏。可以通过以下代码实现:
禁止导航栏滑出:
- 防止用户手势滑动导航栏显示,可以在
onWindowFocusChanged()
方法中设置全屏和隐藏导航栏的标志:java@Override public void onWindowFocusChanged(boolean hasFocus) { super.onWindowFocusChanged(hasFocus); if (hasFocus) { View decorView = getWindow().getDecorView(); int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY | View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN; decorView.setSystemUiVisibility(uiOptions); } }
- 防止用户手势滑动导航栏显示,可以在
注意事项:
- 使用全屏模式和隐藏导航栏可能会影响用户体验,因为导航栏对用户导航和系统交互很重要。在设计应用时,考虑用户的操作习惯和使用场景,避免过度控制用户界面。
通过以上方法,你可以在 Android 7.1 上实现隐藏导航栏并禁止其滑出的效果,提升应用的沉浸式体验。