Talk is cheap, show me the code.

--Linus Torvalds


Okay, here:

一、导航栏:

private void hideNavigationBar() {View decorView = getWindow().getDecorView();int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION| View.SYSTEM_UI_FLAG_FULLSCREEN;decorView.setSystemUiVisibility(uiOptions);}private void showNavigationBar() {View decorView = getWindow().getDecorView();int uiOptions = View.SYSTEM_UI_FLAG_VISIBLE;decorView.setSystemUiVisibility(uiOptions);}

相关:

SYSTEM_UI_FLAG_VISIBLE——显示状态栏和导航栏

SYSTEM_UI_FLAG_LOW_PROFILE——此模式下,状态栏的图标可能是暗的

SYSTEM_UI_FLAG_HIDE_NAVIGATION——隐藏导航栏

SYSTEM_UI_FLAG_FULLSCREEN——全屏,隐藏状态栏和导航栏

SYSTEM_UI_FLAG_LAYOUT_STABLE

SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION

SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN——全屏,隐藏导航栏,状态栏浮在布局上。

SYSTEM_UI_FLAG_IMMERSIVE——沉浸式:半透明的状态栏和导航栏

SYSTEM_UI_FLAG_IMMERSIVE_STICKY——粘性沉浸式


二、状态栏:

private void setStatusBarVisible(boolean show) {if (show) {int uiFlags = View.SYSTEM_UI_FLAG_LAYOUT_STABLE;uiFlags |= 0x00001000;getWindow().getDecorView().setSystemUiVisibility(uiFlags);} else {int uiFlags = View.SYSTEM_UI_FLAG_LAYOUT_STABLE| View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN| View.SYSTEM_UI_FLAG_FULLSCREEN;uiFlags |= 0x00001000;getWindow().getDecorView().setSystemUiVisibility(uiFlags);}}

三、导航栏和状态栏

private void setSystemUIVisible(boolean show) {if (show) {int uiFlags = View.SYSTEM_UI_FLAG_LAYOUT_STABLE;uiFlags |= 0x00001000;getWindow().getDecorView().setSystemUiVisibility(uiFlags);} else {int uiFlags = 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;uiFlags |= 0x00001000;getWindow().getDecorView().setSystemUiVisibility(uiFlags);}}




更多相关文章

  1. android:设置密码隐藏与显示
  2. Android屏幕方向及键盘状态
  3. Android沉浸式效果的实现—Sofia的使用
  4. Android沉浸式状态栏,看完这篇就够了!
  5. android UI进阶之android中隐藏的layout 抽屉的运用
  6. android中setVisibility方法无效的可能原因与解决办法
  7. Android(安卓)手动显示和隐藏软键盘
  8. android 隐藏虚拟按键
  9. Android(安卓)UI 学习

随机推荐

  1. Android的init过程:初始化语言(init.rc)解析
  2. Android(安卓)蓝牙开发实例解析
  3. Android(安卓)5.0 模拟器 emulator无法启
  4. 基于ubuntu16.04多用户编译android N(and
  5. Appium的前世今生、工作原理等
  6. Android优化adapter及SparseArray介绍
  7. android 中getBaseContext getApplicatio
  8. Android(安卓)ListView item 焦点被抢无
  9. Mac OS启动 Android(安卓)Device Monitor
  10. Android中Java服务过程