我想修改colors.xml
中的颜色值,例如
<color name="colorPrimary">#3D3D3D</color>
。我想以编程方式使用Java进行更改,因此我可以在应用运行时对其进行修改。
我尝试过类似R.color.colorPrimary = "#FFFFFF";
的操作,但这会引发不兼容的类型错误,因为R.color.primary必须设置为int,而不是String。
如何使用Java更改colors.xml数据?
您无法在应用程序运行时更改这些值,而是在colors.xml中创建两种颜色,然后可以使用JAVA getResources().getColor(R.id.colorPrimary)
来访问它们,或者如果您想更改主题颜色,则可以使用不同的颜色,并在运行时在它们之间进行更改,更多信息请参见here
如果要更改组件的颜色,则只需输入下一个代码
bbbb.setTextColor(ContextCompat.getColor(context!!, int codecolor))
ccc.setBackgroundColor(ContextCompat.getColor(context!!, int codeColor))