我在Meizu PRO 6 / android 6.0中遇到了设备特定的问题
我尝试通过在主题文件
中定义colorPrimaryDark
来设置statusBar颜色
但当我将其设置为#000000
(黑色)时,它不适用(如您所见,颜色与colorPrimary
相同)
这里可能出现什么问题?它是如何修复的?
假设当前设备对statusBar有某种颜色过滤,可能它只允许比colorPrimary
或类似的颜色更轻的颜色......
答案 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)用作默认值,指出系统使用了应用程序的原色。