在暗模式下,View的标准背景颜色是纯黑色。例如,虽然在iPhone X上看起来确实不错,但在滚动或执行其他动画时确实会导致“ OLED污迹”。根据特定的UI,它看起来确实很糟糕并且很明显:使用分组列表样式滚动列表,其中单元格具有不同的背景颜色,并且单元格在滚动时似乎会收缩。通过使用050505代替纯黑色,可以很容易地解决此问题(另请参见https://medium.com/lookup-design/designing-a-dark-theme-for-oled-iphones-e13cdfea7ffe和https://twitter.com/marcedwards/status/1053519077958803456?s=21,以了解OLED涂抹的含义)。
现在,我当然可以覆盖应用程序中每个视图的背景颜色,以使用自定义颜色值。但这有点糟,很容易忘记,等等。那么,如何改变默认颜色呢?
编辑:我知道如何使用资产目录或不使用资产目录来创建自定义颜色,并在暗和亮模式下使用不同的值。那不是问题。问题特别是如何覆盖默认颜色。
答案 0 :(得分:-1)
我不确定是否有办法覆盖默认的深色模式颜色,但是您可以配置一个自定义颜色集,该颜色集在浅色模式下为一种颜色,然后在深色模式下为另一种颜色。然后,您将像在所有其他颜色名称中一样,在整个应用程序中使用该颜色集名称。这并不能解决您提到要记住使用这种颜色的问题,但可以使它变得更容易。
示例:我可以在应用中使用“ BlackToWhite”作为我的颜色,并且在执行此操作的任何地方,在浅色模式下它将是黑色,而在深色模式下它将是白色