您必须为每个行布局分配由选择器组成的背景,为每个状态分配不同的背景。假设您的项目排布置在一个XML定义的RelativeLayout的:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="2dip"
android:background="@drawable/transparent_selector"> ...
和transparent_selector在这里定义:是一个精心绘制形状属于一个状态表。
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="true" android:drawable="@drawable/shape_7"/>
<item android:state_pressed="true" android:drawable="@drawable/shape_7" />
<item android:state_pressed="false" android:drawable="@drawable/transparent_shape" />
</selector>
和形状在这里被定义:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<gradient
android:startColor="#FF4FDBD5"
android:endColor="#FF1AA6A1"
android:type="linear"
android:angle="90"/>
</shape>
或当你构建ListView的项目,你可以选择分配给“convertView”
欢呼的其他方式
我想使用**默认**选择器。这不可能,因为我不想制作定制的? – Curtain 2011-03-19 14:57:25
好吧,当你没有指定样式时,系统会设置默认选择器,但是这个选择器与市场应用中的选择器不同。 – Franco 2011-03-19 15:08:22
我甚至没有得到默认选择器, – Curtain 2011-03-19 15:16:19