Android管理系统状态栏和导航栏
16lz
2021-01-26
淡化系统状态栏
设置系统状态栏为透明,隐藏actionbar,内容不会冲到状态栏之下。隐藏系统状态栏
针对Android4.1(API Level 16)之下的版本://隐藏系统状态栏
// If the Android version is lower than Jellybean, use this call to hide
// the status bar.
if (Build.VERSION.SDK_INT < 16) {
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
}
//在Android 4.1(API level 16)以及以上的版本中,你可以使用setSystemUiVisibility())来进行动态隐藏
View decorView = getWindow().getDecorView();
// Hide the status bar.
int uiOptions = View.SYSTEM_UI_FLAG_FULLSCREEN;
decorView.setSystemUiVisibility(uiOptions);
// Remember that you should never show the action bar if the
// status bar is hidden, so hide that too if necessary.
全屏显示内容:
设置Activity的主题<item name="android:windowFullscreen">trueitem>
/*全屏*/
requestWindowFeature(Window.FEATURE_NO_TITLE);//取消标题栏
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
/**
* 非粘性沉浸模式,在不改变内容区域大小的情况下,隐藏与显示状态栏和导航栏。但是状态栏占得位置还在
*/
private void unStickyModeFullScreen() {
/*非粘性沉浸模式,在不改变内容区域大小的情况下,隐藏与显示状态栏和导航栏。和上面的效果基本相同,但是同时隐藏了ActionBar*/
View mDecorView = getWindow().getDecorView();
mDecorView.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 // hide nav bar
| View.SYSTEM_UI_FLAG_FULLSCREEN // hide status bar
| View.SYSTEM_UI_FLAG_IMMERSIVE);
}
指定statusBar的颜色:
在主题中添加,首先设置其颜色不跟随ToolBar(ActionBar),android:windowTranslucentStatus位false时,内容不会冲到statusBar的下面,为true时会占据statusbar的位置。<item name="android:windowTranslucentStatus">falseitem>
<item name="android:statusBarColor">@color/black_272a33item>
更多相关文章
- Android使用include标签无法设置具体位置的解决
- Android获取验证码倒计时实现代码
- 【android】 Android(安卓)动画cancle后 view隐藏
- ANDROID 设置状态栏与标题背景颜色一致
- Android自动打开和关闭软键盘
- Android学习之RecyclerView学习(实现瀑布流式布局)
- android 语言切换-横竖屏切换时异常
- Android-->Android(安卓)原生支持圆角图片,圆角ImageView
- android Notification (2)