相关疑难解决方法(0)

如何在ActionBarSherlock中实现多选和Contextual ActionMode?

我应该如何在AdapterView上使用ActionBarSherlock实现多选,因为它不提供MultiChoiceModeListener?

这就是它的样子

上下文行动模式

你怎么能这样做?

android actionbarsherlock android-actionbar contextual-action-bar

27
推荐指数
1
解决办法
2万
查看次数

将ListView choiceMode从singleChoice更改为multipleChoiceModal

我有一个通常是的ListView singleChoice choiceMode.当用户长按项目时,我想进入允许选择多个项目的动作模式,以便他们可以对任何选定的项目执行操作.

我能够配置它ListView以使其处于singleChoice模式,并且用户能够选择列表项以在其旁边显示细节片段并使列表项本身显示为其激活状态.

我也能够配置它ListView以便multipleChoiceModal choiceMode在项目中执行长按并启动动作模式并允许多个选择,但现在ListView将不允许在正常模式下进行单个选择(无动作模式).

如何处理singleChoice模式中的ListView,然后multipleChoiceModal在长按项目时将其转换为模式?

这是我能够提出的最接近的:

  1. 将ListView设置为singleChoice模式
  2. 设置ListView OnItemLongClickListener并在该侦听器中:
    1. 将ListView设置OnItemLongClickListenernull
    2. 将ListView设置choiceModemultipleChoiceModal
    3. 调用view.performClick()长按的项目.

这种方法有几个问题.

  1. 直到第二次长按项目时才开始操作模式.
  2. 当我打电话给我时getListView().setChoiceMode(ListView.CHOICE_MODE_SINGLE);,onDestroyActionMode我得到一个java.lang.StackOverflowError因为该方法最终也试图破坏动作模式(但我们还没有从破坏中返回).

android android-3.0-honeycomb android-4.0-ice-cream-sandwich

10
推荐指数
2
解决办法
7987
查看次数