如何使用选择器在长按时“永久”突出显示ListView行,但在正常按下时会短暂显示

时间:2014-12-17 20:40:13

标签: android android-listview android-listfragment android-selector

我有一个ListFragment,其ListView设置为ListView.CHOICE_MODE_SINGLE。适配器返回自定义行布局,我将每个行布局的背景设置为选择器。

但我似乎无法定义选择器,因此在长按时,该行会保持高亮显示,但在正常按下时,它只会略微突出显示。

这是我的选择器:

<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:state_activated="true" android:drawable="@color/light_blue" />
    <item android:drawable="@android:color/transparent" />

</selector>

该行在长按时保持高亮显示,但正常按下也会使行保持高亮显示。我已尝试在每个项目中使用各种属性组合,但无法正确使用。

澄清:我仍然会喜欢它,以便当按下另一行时,之前长按(并突出显示)的行将不会突出显示。上面的选择器确实这样做了。

1 个答案:

答案 0 :(得分:0)

如果你想使用状态,请查看android定义的默认状态,以确保没有状态。如果android没有适合您需求的状态,请在此处查看定义自定义状态How to add a custom button state

如果您不想这样做,您可以随时将选择添加到列表中,并在我的评论提示中更改getView中的背景。