我正在为客户制作一个直播活动应用。大约有20个视图容器大量使用colorPrimary
和colorAccent
来为视图着色。
客户刚刚决定每个事件的颜色应该不同。
我有没有办法使用ContextThemeWrapper
来简单地注入从后端收到的colorAccent
和colorPrimary
?这样,当我开始EventActivity
时,我可以只输入正确的颜色,然后这些颜色会一直传播到活动View
,Fragment
和{ {1}}孩子。
如果这不可能,我想我将不得不在Java中逐个查看每个Dialog
并设置适当的颜色。这很乏味但很容易。我的形状在XML中定义并不容易。例如,我有一个View
我用作按钮背景,它只是一个圆角矩形的1dp笔划。笔画的颜色为drawable
。我将如何在运行时更改它?