【发布时间】:2013-02-28 07:20:27
【问题描述】:
我目前有一个ListView,它在ListView 的OnItemLongClickListener 中激活一个上下文ActionBar。
我正在尝试通过单击它们来选择项目,但前提是上下文 ActionBar 已启动。
问题是,当我检查 isItemChecked() 以切换项目的选择状态时,它总是返回与预期相反的结果。
这是我如何实现OnItemClickListener:
list.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
if (mActionMode != null){
list.setItemChecked(position, !list.isItemChecked(position));
}
else{
list.setItemChecked(position, false);
}
}
});
编辑:这很奇怪..这段代码切换选择状态:
list.setItemChecked(position, list.isItemChecked(position));
发生了什么事!?
编辑 2: 啊,看起来 android 会自动检查和取消选中每个项目...有没有办法改变这种行为并自己处理?
【问题讨论】:
-
我们需要了解 mActionMode 方法中的内容,因为它触发了复选框是否应该被选中。你能包含
mActionMode()方法的代码吗?谢谢。
标签: android android-listview android-adapterview