【发布时间】:2020-03-07 22:17:57
【问题描述】:
我正在使用材质组件的深色主题样式,一切正常,但现在我需要显示具有不同主题的特定视图以获得更多对比度。
我在values/themes.xml 中定义了我的主题:
<style name="Base.AppTheme" parent="Theme.MaterialComponents.DayNight.NoActionBar">
<item name="colorPrimary">@color/color_primary</item>
<item name="colorPrimaryVariant">@color/color_primary_variant</item>
<item name="colorOnPrimary">@color/color_on_primary</item>
...
</style>
以及values/colors.xml 和values-night/colors.xml 中的两种不同颜色资源。
我想做的是找到一种方法来在使用深色主题时检索浅色主题颜色(反之亦然),或者将相反的主题应用于单个视图。
我找到的唯一解决方案是在两个colors.xml 文件中为每种颜色简单地定义两个变体(正常和“反转”),但由于定义了许多颜色,我想避免这种情况。
【问题讨论】:
标签: android android-resources android-theme material-components-android