移动开发---更改状态栏颜色

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhanwei0102/article/details/85008532
 private void setStatusBarColor(int color) {
        if (color == 0)
            return;

        if (Build.VERSION.SDK_INT >= 21) {
            Window window = getWindow();
            //取消设置透明状态栏,使 ContentView 内容不再覆盖状态栏
            window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
            //需要设置这个 flag 才能调用 setStatusBarColor 来设置状态栏颜色
            window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
            //设置状态栏颜色
            window.setStatusBarColor(color);
        }
    }

    public int getStatusBarColor() {
        return R.color.white;
    }

 调用设置一下

setStatusBarColor(getResources().getColor(getStatusBarColor()));

ok!!

猜你喜欢

转载自blog.csdn.net/zhanwei0102/article/details/85008532