我想使用一个选择器XML文件来改变按钮的背景颜色。我的方法基本上与这个页面底部的例子相同:http://developer.android.com/guide/topics/resources/color-list-resource.html。
我有一个名为res/color/button_text.xml的文件,内容如下:
我有一个名为res/color/button_text.xml的文件,内容如下:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:color="#ffff0000"/> <!-- pressed -->
<item android:state_focused="true"
android:color="#ff0000ff"/> <!-- focused -->
<item android:color="#ff000000"/> <!-- default -->
</selector>
我的布局包含以下代码:
<Button
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/button_text"
**android:background="@color/button_text"** />
这段代码会导致崩溃,错误提示为“二进制XML文件第4行标签需要'drawable'属性或定义drawable的子标签”。但是如果我按照上面的链接使用android:textColor,则可以正常工作。因此,问题必须是背景问题。如果不是必要的话(基本上我只需要一个可点击的矩形,所以我使用带有彩色背景的按钮),我不想创建一个9patch-png。
item android:color="@color/black"
这一行..........我建议应该改为item android:drawable="@color/black"
........... - user609727