【发布时间】:2019-10-26 21:02:39
【问题描述】:
我有一个这样的自定义属性:
<attr name="colorPrimarySdk" format="color"/>
<attr name="colorSecondarySdk" format="color"/>
<attr name="colorAccentSdk" format="color"/>
我在我的风格中使用它们,如下所示:
<style name="MyTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="colorPrimary">?colorPrimarySdk</item>
<item name="colorPrimaryDark">?colorSecondarySdk</item>
<item name="colorAccent">?colorAccentSdk</item>
</style>
现在我想要的是从代码中动态设置属性的值,比如:
colorPrimarySdk.value = myCustomColor
我已经尝试过使用 TypedValue 并访问属性本身。 如果有人可以帮助更改我的自定义属性的值,那将是一个很大的帮助。提前致谢。
【问题讨论】:
-
这是通过样式设置它们。我想要一种可以访问 java 或 kotlin 文件中的属性并为该属性设置值的方法。
-
您是否尝试修改现有主题或 any 属性?
-
@SarthakGandhi 你有没有找到以编程方式更改属性的任何解决方案?。