我很确定这个问题已经在某个地方得到了回答。这似乎太常见了。但我找不到答案。我也想不出解决办法。
这是问题所在:
我希望我的 TableRow 之一具有不同的背景颜色。很简单,我只需要添加
android:background="#123456"
在 TableRow 的 XML 声明中。但是,我也希望我的应用程序有两个主题。在另一个主题中,TableRow 应该有不同的背景颜色。我只是找不到在主题内定义颜色值并使用它的方法。我想输入这样的内容:
<style name="Theme.MyApp" parent="@style/Theme.Light">
<color "my_cool_color">#123456</color>
</style>
<style name="Theme.MyApp.Dark" parent="@style/Theme.Dark">
<color "my_cool_color">#654321</color>
</style>
而且,在 TableRow 的声明中:
android:background="@color/my_cool_color"
所以,当我改变主题时,那个 TableRow 的背景颜色也会改变。我已经尝试了很多小时并且没有成功......我没有尝试的一件事是基于 TableRow 创建我自己的小部件并为其声明一个单独的样式 - 我认为这应该可行,但它是对于这么简单的问题,解决方案太重了。