Meizu PRO 6上的状态栏颜色设置不正确

时间:2016-11-08 07:57:57

标签: android colors background statusbar

我在Meizu PRO 6 / android 6.0中遇到了设备特定的问题

我尝试通过在主题文件

中定义colorPrimaryDark来设置statusBar颜色

当我将其设置为#FF0000(红色)时,它可以正常工作 Meizu PRO 6 / #FF0000

但当我将其设置为#000000(黑色)时,它不适用(如您所见,颜色与colorPrimary相同) Meizu PRO 6 / #000000

在LG Nexus 5x上运行相同的代码: Nexus 5x / #000000

这里可能出现什么问题?它是如何修复的?

假设当前设备对statusBar有某种颜色过滤,可能它只允许比colorPrimary或类似的颜色更轻的颜色......

2 个答案:

答案 0 :(得分:0)

问题是魅族有自定义启动器和它自己的实现。

对我来说

getWindow().setStatusBarColor(color);
actionBar.setBackgroundDrawable(new ColorDrawable(color));

工作正常。但是当我尝试在没有关注的活动中使用它时它还没有工作。

但是这种解决方法(参见下面的snipet)有效。只需在活动有焦点时更新颜色

 @Override
    public void onWindowFocusChanged(boolean hasFocus) {
        super.onWindowFocusChanged(hasFocus);
        if (hasFocus) {
          //... your code for colorization
        }
 }

答案 1 :(得分:0)

在OnePlus A6000(6)/ Android 9上,navigationBarColor遇到了同样的问题。
因此,我只使用了“几乎”黑色:#010101,效果很好! 我想有些电话制造商将#000(即0)用作默认值,指出系统使用了应用程序的原色。