我在selector
添加了一些ListView
来为其量身定制。我问这里怎么做My ListView lost its behavior after I changed background color?
我按照说明进行了操作。但是,当我为android:background
设置ListView
指向选择器时,应用程序崩溃了。我不知道为什么。当我将其设置为十六进制颜色时,它可以工作。
以下是名为list_item_state.xml
的选择器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="#808080"/>
<item android:state_focused="true" android:color="#808080"/>
<item android:color="#FFFAF0" />
</selector>
以下是ListView
XML:
<ListView android:id="@+id/list"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FFFAF0" <!-- changes are made here -->
android:dividerHeight="1dp"
android:divider="#808080"/>
我在这里做错了吗?
答案 0 :(得分:1)
在您的值文件中创建一个xml color.xml,并在此处定义您的颜色
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="magenta">#FF00FF</color>
<color name="yellow">#FFFF00</color>
<color name="light_grey">#ffb9b8bb</color>
</resources>
然后在选择器中使用这些颜色
<?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/yellow" />
<item android:state_focused="true" android:drawable="@color/yellow" />
<item android:drawable="@color/magenta"/>
</selector>