我的活动中有一个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
。