我最近使用了https://material.io/tools/color/上的材质调色板生成器来生成调色板。
如您所见,此工具是Material.io上的官方工具。它生成了几种颜色-主色和辅助色,每种都有两种变体。这导致我在colors.xml
文件中创建了类似的内容。
<!-- Color palette -->
<!-- ... -->
<!-- Colors by usage -->
<color name="colorPrimary">@color/black</color>
<color name="colorPrimaryDark">@color/blackDark</color>
<color name="colorPrimaryLight">@color/gray</color>
<color name="colorSecondary">@color/red</color>
<color name="colorSecondaryDark">@color/maroon</color>
<color name="colorSecondaryLight">@color/redLight</color>
<color name="colorTextOnPrimary">@color/white</color>
<color name="colorTextOnSecondary">@color/white</color>
但是如何在主题中应用这些颜色? Android支持材料(AppCompat)主题仅预期/允许三种颜色-主色,次要色和强调色。我应该在可以应用这些属性的地方使用另一个主题吗?还是我在这里做错了什么?
我想避免在这里创建一个全新的主题,而不必为我可能要使用的每个组件手动设置颜色。
答案 0 :(得分:-1)
由于我看到您使用的是浅色和深色,因此我认为生成器希望您使用DayNight主题。由于您已经在使用AppCompat,我想您正在处理支持库,因此您可以轻松地将这些颜色与以下内容一起使用:
<style name=“AppTheme" parent="Theme.AppCompat.DayNight">
<item name="colorPrimary">...</item>
<item name="colorPrimaryDark">...</item>
<item name="colorAccent">...</item>
...
</style>
这只是找到要设置的正确属性的问题。 快速的Google搜索将为您带来许多有用的资源,例如检查另外post,它也有指向官方android开发人员博客的链接。