Android StatusBar设置

自 4.4 版本(API 19)以后,Android 系统开始支持状态栏的定制,并被纳入 Android 设计规范当中。

statusBar的颜色设置

通过theme实质对应的颜色:

@android:color/transparenttruefalse

通过代码设置statusBar颜色

// 设置颜色getWindow().setStatusBarColor(Color.TRANSPARENT);// 设置文字是否黑色View decorView = getWindow().getDecorView();int option = View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR;decorView.setSystemUiVisibility(option);

statusBar的显示与隐藏

View decorView = getWindow().getDecorView(); int option = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN; decorView.setSystemUiVisibility(option);

其他

decorView.setSystemUiVisibility(option)涉及到的设置:

  • SYSTEM_UI_FLAG_LOW_PROFILE

    设置状态栏和导航栏中的图标变小,变模糊或者弱化其效果。这个标志一般用于游戏,电子书,视频,或者不需要去分散用户注意力的应用软件。

  • SYSTEM_UI_FLAG_HIDE_NAVIGATION

    隐藏导航栏,点击屏幕任意区域,导航栏将重新出现,并且不会自动消失。

  • SYSTEM_UI_FLAG_FULLSCREEN

    隐藏状态栏,点击屏幕区域不会出现,需要从状态栏位置下拉才会出现。

  • SYSTEM_UI_FLAG_LAYOUT_STABLE

    稳定布局,主要是在全屏和非全屏切换时,布局不要有大的变化。一般和View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN、View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION搭配使用。同时,android:fitsSystemWindows要设置为true

  • SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION

    将布局内容拓展到导航栏的后面。

  • SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN

    将布局内容拓展到状态的后面。

  • SYSTEM_UI_FLAG_IMMERSIVE

    使状态栏和导航栏真正的进入沉浸模式,即全屏模式,如果没有设置这个标志,设置全屏时,我们点击屏幕的任意位置,就会恢复为正常模式。所以,View.SYSTEM_UI_FLAG_IMMERSIVE都是配合View.SYSTEM_UI_FLAG_FULLSCREENView.SYSTEM_UI_FLAG_HIDE_NAVIGATION一起使用的。

  • SYSTEM_UI_FLAG_IMMERSIVE_STICKY

    它的效果跟View.SYSTEM_UI_FLAG_IMMERSIVE一样。但是,它在全屏模式下,用户上下拉状态栏或者导航栏时,这些系统栏只是以半透明的状态显示出来,并且在一定时间后会自动消息。

 

 

 

 

 

 

 

 

 

 

 

 

 

更多相关文章

  1. 去掉android的屏幕上的title bar
  2. android 模拟器不能上网问题
  3. android google map的使用
  4. Android(安卓)的网络编程
  5. 转:Android实现矩形设置菜单
  6. EditText的常用点,输入控制(包含inputType)
  7. Android使用ImageView引起Missing contentDescription attribute
  8. Android中使用WebView, WebChromeClient和WebViewClient加载网页
  9. Android(安卓)的网络编程

随机推荐

  1. Android(安卓)DataBinding使用总结(二)
  2. ionic 发布 android apk
  3. Android的Window底层原理
  4. 颜色选择器【ColorPickerPreference】自
  5. 打开Android(安卓)C文件中的LOG
  6. Android(安卓)Service的两种启动方式,你知
  7. android 6.0及以上动态权限的获取
  8. Android应用程序结构及开发流程
  9. Android(安卓)自定义dialog(封装好的)
  10. ArcGis for Android(安卓)10.2.8个人整理