8

我有个问题。首先检查我的代码:

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_selected="true" android:color="@color/clickedtext" />
    <item android:state_pressed="true" android:color="@color/clickedtext" />
    <item  android:color="@color/defaulttext" />
</selector>

在这里,默认文本颜色出现在默认状态。当我单击时,列表项中的文本颜色会发生变化。But color of the text does not change when an item selected.

我尝试了一些东西,但我无法处理这个问题。我该怎么办 ?

4

2 回答 2

20

在使用 ListView 时,我也在寻找这个问题的答案,并且不得不在这里浏览很多帖子,然后才能找到认为是最佳选择的帖子,并且工作起来就像一个魅力。

这个想法是将视图设置为选中,然后使用state_activated而不是state_selected执行您的选择。如果您使用的是 ListView 或类似的,您还需要调用setChoiceMode(ListView.CHOICE_MODE_SINGLE)以确保只检查一项。有关更多信息,请参阅帖子

我希望这可以帮助某人比我更快地找到解决方案!

于 2013-06-05T17:34:15.260 回答
0

使用自定义列表项布局时:设置

android:background="?android:attr/activatedBackgroundIndicator"

作为背景

于 2016-06-07T09:24:50.667 回答