29 状态选择器
1 <?xml version="1.0" encoding="utf-8"?> 2 <selector xmlns:android="http://schemas.android.com/apk/res/android"> 3 4 <!-- 没有焦点时的背景图片 --> 5 <item android:drawable="@drawable/handle_normal" android:state_enabled="true" android:state_window_focused="false"/> 6 <!-- 触摸模式按下时的背景图片 --> 7 <item android:drawable="@drawable/handle_pressed" android:state_pressed="true"/> 8 <item android:drawable="@drawable/handle_focused" android:state_enabled="true" android:state_focused="true"/> 9 <item android:drawable="@drawable/handle_normal" android:state_enabled="true"/> 10 <!-- 获得焦点时的图片背景 --> 11 <item android:drawable="@drawable/handle_focused" android:state_focused="true"/> 12 13 <!-- 14 android:state_selected是选中 15 android:state_focused是获得焦点 16 android:state_pressed是点击 17 android:state_enabled是设置是否响应事件,指所有事件 18 --> 19 20 </selector>
使用xml文件:
1.方法一:在listview中配置Android:listSelector="@drawable/xxx
或者在listview的item中添加属性android:background="@drawable/xxx"
2.方法二:Drawable drawable = getResources().getDrawable(R.drawable.xxx);
ListView.setSelector(drawable);但是这样会出现列表有时候为黑的情况,需要加上:android:cacheColorHint="@android:color/transparent"使其透明。