我想自定义listView中项目的选择效果,但我不知道如何。
如果我在用户选择项目时使用不同的png更改选择项目背景,将会很有用。
有什么建议吗?
答案 0 :(得分:1)
您正在寻找的是选择器 在res中创建一个选择器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:drawable="@drawable/selected" />
<item
android:drawable="@drawable/normal" />
</selector>
另见: http://developer.android.com/guide/topics/resources/drawable-resource.html#StateList
答案 1 :(得分:1)
使用选择器:
<ListView android:id="@+id/list"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:divider="@null"
android:dividerHeight="0dip"
android:listSelector="@drawable/list_selector" />
选择器:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true"
android:state_pressed="false"
android:drawable="@drawable/yourdrawable" />
<item android:state_focused="true"
android:state_pressed="true"
android:drawable="@drawable/yourdrawable" />
<item android:state_focused="false"
android:state_pressed="true"
android:drawable="@drawable/yourdrawable" />
<item android:drawable="@drawable/yourdrawable" />
</selector>