关闭

动态修改状态栏颜色

669人阅读 评论(0) 收藏 举报
分类:

  /**
         * 修改状态栏颜色
         */
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
            setTranslucentStatus(true);
        }

        SystemBarTintManager tintManager = new SystemBarTintManager(this);
        tintManager.setStatusBarTintEnabled(true);
        tintManager.setStatusBarTintResource(R.color.colorPrimaryDark3);


 @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);
    }



最后需要注意的一个地方:记得在Activity的父布局加上这句,

SystemBarTintManager 是一个第三方封装的类
android:fitsSystemWindows="true"
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:21803次
    • 积分:670
    • 等级:
    • 排名:千里之外
    • 原创:46篇
    • 转载:12篇
    • 译文:0篇
    • 评论:1条