<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>
此处,defaulttext颜色显示为默认状态。单击时,listitem中的文本颜色会发生变化。但是当选择一个项目时,文本的颜色不会改变。
我尝试了一些东西,但我无法解决这个问题。 我该怎么办?
答案 0 :(得分:17)
我在使用ListView时也在寻找答案,并且在找到this one之前必须在这里搜索很多帖子,我认为这是最好的选择,并且像魅力一样。
我们的想法是将视图设置为已选中,然后使用state_activated
而不是state_selected
来执行您的选择。如果您使用的是ListView或类似的,则还需要调用setChoiceMode(ListView.CHOICE_MODE_SINGLE)
以确保只选中一个项目。有关详细信息,请参阅the post
我希望这可以帮助别人找到比我更快的解决方案!
答案 1 :(得分:0)
使用自定义listitem-layout时:设置
android:background="?android:attr/activatedBackgroundIndicator"
作为背景