Android实现沉浸式状态栏!

来源:互联网 发布:中国2017网络暴力案例 编辑:程序博客网 时间:2024/06/11 04:57
1、Android:theme="@android:style/Theme.NoTitleBar"2 、getWindow().addFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);//(屏幕没有边界限制(允许窗口扩展到屏幕外)WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS

第二种适合21以上版本

public void setFull() {    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {       Window window = getWindow();       window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS| WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);       window.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION| View.SYSTEM_UI_FLAG_LAYOUT_STABLE);       window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);       window.setStatusBarColor(Color.TRANSPARENT);       window.setNavigationBarColor(Color.TRANSPARENT);   }}

第三种19版本

 @TargetApi(19) private void setTranslucentStatus(boolean on) {    Window win = getWindow();    WindowManager.LayoutParams winParams = win.getAttributes();    final int bits = WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS;    if (on) {       winParams.flags |= bits;    } else {       winParams.flags &= ~bits;    }       win.setAttributes(winParams);}