安卓N通知标题和图标颜色变暗

19
在 Android N 和 O 中显示通知时,它的样式如下图所示: 图片描述 通过使用 NotificationCompat.Builder 的 setColor 方法,可以更改图标和应用名称的顶部颜色。问题在于,显示的颜色与提供的颜色不匹配,因为通知中会变得 暗淡
我在 Google Pixel (Oreo)上进行了测试。这个问题有文档记录吗?有什么解决方法吗?
1个回答

29

Google决定在使用setColor时限制可接受的颜色。是的,这是未记录、未经请求且邪恶的!通过一些挖掘(黑客方式),可以在(内部)ContrastColorUtil的源代码中找到它。请查看第300行(findContrastColor)475行(resolveContrastColor),其中的理由是:

解析通知的颜色,使其具有足够的对比度作为通知操作和标题文本的颜色。

我不同意。Google应该更好地知道并不作恶设计师和开发者自由审美选择。


1
现在有没有任何解决方法,或者有没有文件说明它将为给定的颜色添加足够的对比度? - Rohit Raich
1
仍然有同样的问题。有解决方法吗? - cesarsicas
源代码链接已失效。您是否有关于此的更多信息?我想知道我可以使用什么颜色来满足最小对比度要求。 - Henrique Bruno
找到了另一个更详细的答案 - https://dev59.com/cJzha4cB1Zd3GeqPMe_2#40917609 - Henrique Bruno
嘿,感谢您的评论。我已经更新了帖子并修复了指向Google Android源代码的Web链接,添加了引用源代码行的直接链接。源代码已经重构,并将名称从NotificationColorUtil更改为ContrastColorUtil... - Nuno Henriques

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接