带有上下文操作栏的ListView

时间:2013-03-20 03:47:58

标签: java android listview android-actionbar

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

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

1 个答案:

答案 0 :(得分:1)

我找到了解决问题的方法!我将textViewResourceId设置为simple_list_item_activated_1,突出显示所选的选项并在ListView.CHOICE_MODE_SINGLE中初始化ListView。在onItemClick中,如果选择模式为单一,我将单击的项目设置为取消选中。在onItemLongClick中,我将选择模式设置为ListView.CHOICE_MODE_MULIPLE并打开上下文操作栏(CAB)。我从helper方法处理CAB的菜单项,当我销毁动作模式时,我还将选择模式设置回ListView.CHOICE_MODE_SINGLE