我的活动中有一个ListView最初设置为CHOICE_MODE_SINGLE。我提供的是R.id.simple_list_item_1的textViewResourceId,因为我只显示一行文本。

当我长按一个项目时,我可以调出带有删除图标的上下文操作栏(CAB)。删除将要选择的项目不是问题。我需要显示实际选择的项目时出现问题。因为textViewResourceId是simple_list_item_1,所以此textView不会显示所选项目,因为它仅用于单选。是否可以在运行时更改此resourceId的方法,以使ListView可以开始显示多个选择,然后在退出CAB时返回到单个选择?

最佳答案

我找到了解决问题的方法!我将textViewResourceId设置为simple_list_item_activated_1,这突出显示了所选的选项,并在ListView.CHOICE_MODE_SINGLE中初始化了ListView。在onItemClick中,如果选择模式为单个,则将单击的项目设置为未选中。在onItemLongClick中,我将选择模式设置为ListView.CHOICE_MODE_MULIPLE并打开了上下文操作栏(CAB)。我通过助手方法处理CAB的菜单项,并且在销毁操作模式时,还将选择模式重新设置为ListView.CHOICE_MODE_SINGLE

07-24 09:47
查看更多