我一直致力于一个项目,其中一部分包括一个列表视图。单击列表视图中的项目时,它将链接到另一个活动。但是当我点击它时,没有立即反应。例如,在我的一个活动中,我有一个按钮,我使用setOnTouchListener
,这样当按下按钮时,它有一个颜色过滤器,一个被释放,过滤器消失了,下一个活动打开。我希望与列表视图项具有类似的效果。
我已尝试在listView上使用onTouchListener
执行相同的任务,但它不起作用。我使用setSelected(bool)
来使用xml文件中的android:state_selected
属性更改列表视图的背景。 (请参阅此处了解我的工作方式Android ListView selected item stay highlighted)。
但它不起作用,因为onTouchListener
中的视图与我需要的视图(特定列表视图项)不同。那么有没有办法在按下时突出显示列表视图中的项目?
答案 0 :(得分:0)
你必须为此做出选择。等,
list_item_selector.xml
------------------------
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="false"
android:state_pressed="false"
color android:color="#FF0000"/>
<item android:state_pressed="true">
<color android:color="#AA736F6E" />
</item>
<item android:state_selected="true"
android:state_pressed="false">
<color android:color="#00000000"/>
你必须在listview中设置这个选择器以及listitem的布局。像这样,
<ListView
android:id="@+id/mylist"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:cacheColorHint="#AA736F6E"
android:clickable="true"
android:background="@drawable/list_item_selector"
android:divider="#737CA1"
android:dividerHeight="0.5dp"
android:choiceMode="singleChoice">
</ListView>
并在列表项中设置
跳跃它是工作