Android ListView选择器悬停

问题描述:

我正在努力与ListViewselector。当用户将他的手指放在屏幕上时,我想在列表项目上显示灰色。就这样。当用户释放手指(或将其移动到其他地方)时,颜色应该始终回到白色。这是我的ListViewAndroid ListView选择器悬停

<ListView android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:duplicateParentState="true" 
      android:textAppearance="?android:textAppearanceMedium" 
      android:drawSelectorOnTop="false" 
      android:listSelector="@drawable/my_list_selector" 
      android:id="@+id/list"/> 

这是selector

<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:drawable="@color/colorPrimary" 
      android:state_activated="true"/> 
    <item android:drawable="@color/colorPrimaryDark" 
      android:state_activated="false"/> 
</selector> 

什么我这里做错了吗?

P.S.如果以相反的方式给出truefalse,则什么也不会发生。

好像你要使用的android:state_pressed代替android:state_activated

代码

<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:drawable="@color/colorPrimary" 
      android:state_pressed="true"/> 
    <item android:drawable="@color/colorPrimaryDark"/> 
</selector> 

经过讨论与OP和@pskink问题同

<item android:state_window_focused="false" android:drawable="@color/transparent"/> 
+0

不起作用解决,当我将手指移动到其他地方时颜色保持不变,它应该消失 – soommy12

+0

您必须从默认颜色中删除此属性 –

+0

哪些属性?来自哪里?那个评论对我说什么 – soommy12