我有一项活动,我想根据用户偏好更改颜色。
我在styles.xml中创建了很多样式
<style name="Yellow" parent="Theme.AppCompat.Light.DarkActionBar">
<item name="colorPrimary">$ffff00</item>
<item name="colorPrimaryDark">#000000</item>
<item name="colorAccent">#ffff00</item>
</style>
<style name="Red" parent="Theme.AppCompat.Light.DarkActionBar">
<item name="colorPrimary">#ff0000</item>
<item name="colorPrimaryDark">#000000</item>
<item name="colorAccent">#ff0000</item>
</style>
我的工具栏等等没问题......问题是我想用所选的colorPrimary颜色更改RelativeLayout背景。这是我的默认AppTheme颜色。
创建我的活动:
setTheme(R.style.Yellow);
myactivity.xml
<RelativeLayout
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="50dp"
android:background="@color/colorPrimary">
如何根据黄色或红色设置myactivity relativelayout bkcolor(用户会选择一个)?
答案 0 :(得分:1)
在color.xml资源中定义颜色
<color name="red">#FF0000</color>
并将其设置为查看背景
RelativeLayout rl = (RelativeLayout)findViewById(R.id.rlid);
rl.setBackgroundColor(R.color.read)
或创建颜色选择器like this
<item name="colorPrimary">@color/red</item>