我的问题是 - 我有一个ExpandableListView
并希望在其子项上使用Contextual Action Bar (CAB)
。不好的是 - 通过长按来选择组项目,这对我不利。那么在ActionMode中是否有任何方法可以使它们不可选?
我试着用onItemLongClick
;在getGroupView
内尝试了onLongClick。尝试了其他一些技巧但失败了。
如果您发现这是不可能的 - 也许有一种方法可以选择所选组中的所有子项?这可能是一个解决方案,但我无法做到这一点。 谢谢。
答案 0 :(得分:0)
解决。 我做的是下一个:
public void onItemCheckedStateChanged(ActionMode mode, int position, long id,
boolean checked) {
int type = ExpandableListView.getPackedPositionType(id);
if (checked && type == ExpandableListView.PACKED_POSITION_TYPE_GROUP) {
elvBankBranches.setItemChecked(position, false);
return;
}
}
当项目被选中时 - 我检查它是否是一个组织 - 如果是 - 只需取消选中它。工作良好。
注意! - 当在代码中取消选中该项时 - 此方法onItemCheckedStateChanged
将再次被触发!
希望它有所帮助)