Android开发之5.0已以上版本沉浸式状态栏

方法一:(5.1.1,6.0.1,7.1.2通用)

try {
            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
                Window window = getWindow();
                window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
                window.setStatusBarColor(Color.parseColor(ReapalConfig.theme_color));
                //底部导航栏
                window.setNavigationBarColor(Color.parseColor(ReapalConfig.theme_color));
            }
        } catch (Exception e) {
            e.printStackTrace();
        }

请将以上代码设置在你setContentView之前即可实现


看下效果图:



方法二:

设置状态栏不可见:

 protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
        setContentView(R.layout.activity_wait_aty);
        init();
    }


方法三:

设置状态栏和导航栏为透明的

 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
            Window window = getWindow();
            // Translucent status bar
            window.addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
            // Translucent navigation bar
            window.addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);
        }

猜你喜欢

转载自blog.csdn.net/xiayiye5/article/details/81012662