为了账号安全,请及时绑定邮箱和手机立即绑定

创建一个自定义的 ListView selector

创建一个自定义的 ListView selector

一只名叫tom的猫 2019-03-14 14:11:18
当我点击一个 listview item 时,为什么没有 selector 出现?帖下我的代码:ListView:<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_height="wrap_content" android:layout_width= "wrap_content" android:id="@+id/streamRelativeLayout">     <ListView android:layout_height="fill_parent" android:layout_width="fill_parent" android:id="@+id/streamListView" android:cach     eColorHint="#00000000" android:fadingEdge="none" android:listSelector="@drawable/swipeview_list_selector">   </ListView>     <TextView android:layout_centerInParent="true" android:layout_height="wrap_content" android:id="@+id/noStreamTextView" androi     d:layout_width="wrap_content" android:text="No Stream Available" android:visibility="invisible"></TextView>     <ProgressBar android:layout_centerInParent="true" android:layout_height="wrap_content" android:id="@+id/streamProgressBar" a     ndroid:layout_width="wrap_content"></ProgressBar> </RelativeLayout>my selector:<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android">   <item android:state_enabled="false" android:state_focused="true"         android:drawable="@drawable/stocks_gradient" />   <item android:state_pressed="true"         android:drawable="@drawable/stocks_gradient" />   <item android:state_focused="true"         android:drawable="@drawable/stocks_gradient" /> </selector>gradient:<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android">     <gradient          android:startColor="#ECECEC"         android:centerColor="#F6F6F4"         android:endColor="#F8F8F6"         android:angle="90"         android:dither="true"      /> </shape>我同时也在 getView()里设置了颜色转换int colorPos = position % colors.length;             v.setBackgroundColor(colors[colorPos]);
查看完整描述

2 回答

?
守着一只汪

TA贡献1872条经验 获得超3个赞

需要设置 selectorontop 属性为 true


查看完整回答
反对 回复 2019-04-27
?
喵喵时光机

TA贡献1846条经验 获得超7个赞

如果 selected item 没有按照你的意思显示出来,那是因为丢失了 state_selected 案例:

<item android:state_selected="true" android:drawable="..."/>


查看完整回答
反对 回复 2019-04-27
  • 2 回答
  • 0 关注
  • 663 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信