【发布时间】:2021-06-07 11:19:59
【问题描述】:
我想从应用程序主题中使用 colorAccent。有两个主题具有不同的强调色。我用这段代码实现它:
样式:
<style name="BaseAppTheme" parent="Theme.MaterialComponents.Light.DarkActionBar">
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
</style>
<style name="AppGreenTheme" parent="BaseAppTheme">
<item name="colorAccent">@color/green</item>
</style>
<style name="AppRedTheme" parent="BaseAppTheme">
<item name="colorAccent">@color/red</item>
</style>
布局:
<FrameLayout
android:id="@+id/receives_funds_share"
android:background="?colorAccent"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
但它显示错误的颜色 (#04dac6)。当正确的颜色变深时(#05c0a5)。
当我将它从 android:background="?colorAccent" 更改为 android:background="@color/green" 时,它运行良好。有什么区别?如何从样式中正确检索accentColor?
在 Android 11 上测试。
【问题讨论】:
标签: android material-design android-styles