如何使用xml文件更改按钮的颜色?我尝试使用android:background="@android:color/black"
,但据我所知,它仅适用于黑白。谁可以给我解释一下这个。为什么不android:background="@android:color/blue"
?
答案 0 :(得分:0)
您可以使用如下选择器文件执行此操作:
<item android:state_pressed="true" >
<shape>
<gradient
android:startColor="@android:color/yellow"
android:endColor="@android:color/yellow"
android:angle="270" />
<stroke
android:width="3dp"
android:color="@android:color/grey" />
<corners
android:radius="3dp" />
<padding
android:left="10dp"
android:top="10dp"
android:right="10dp"
android:bottom="10dp" />
</shape>
</item>
<item android:state_focused="true" >
<shape>
<gradient
android:endColor="@android:color/orange"
android:startColor="@android:color/orange"
android:angle="270" />
<stroke
android:width="3dp"
android:color="@android:color/grey" />
<corners
android:radius="3dp" />
<padding
android:left="10dp"
android:top="10dp"
android:right="10dp"
android:bottom="10dp" />
</shape>
</item>
<item>
<shape>
<gradient
android:endColor="@android:color/blue"
android:startColor="@android:color/blue"
android:angle="270" />
<stroke
android:width="3dp"
android:color="@android:color/grey" />
<corner
android:radius="3dp" />
<padding
android:left="10dp"
android:top="10dp"
android:right="10dp"
android:bottom="10dp" />
</shape>
</item>
将文件命名为custom_button.xml,然后在实际按钮中命名:
background="@drawable/custom_button"
答案 1 :(得分:0)
更改按钮的颜色我有2个答案: -
你可以使用android:background =“#0000ff”获取蓝色和颜色代码你可以访问http://html-color-codes.info/
我建议使用xml drawables来完成数据,你将创建一个onclick状态drawable和normal状态drawable然后你将在一个drawable中使用它们。这样你就可以在onclick上给出不同的颜色。
THX。
答案 2 :(得分:0)
您必须为项目定义可绘制的属性(出于某种原因,在背景定义时需要它),所以:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" android:drawable="@color/red"/> <!-- pressed -->
<item android:state_focused="true" android:drawable="@color/blue"/> <!-- focused -->
<item android:drawable="@color/black"/> <!-- default -->
</selector>
另请注意,drawable属性不接受原始颜色值,因此您必须将颜色定义为资源。在res / values文件夹中创建colors.xml文件:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="black">#000</color>
<color name="blue">#00f</color>
<color name="red">#f00</color>
</resources>
您还可以查看this
答案 3 :(得分:0)
您可以在res/values/
文件夹下创建一个文件,并将其命名为color.xml
。然后在这个文件中添加你的颜色:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="blue" >#0000ff</color>
<color name="red" >#ff0000</color>
<color name="green">#00ff00</color>
</resources>
然后在xml布局中,您可以指定所需的颜色:
android:background="@color/blue"
而不是
android:background="@android:color/blue"
注意:您可以将此tutorial视为在按钮和视图上使用选择器的高级步骤。