ExpandableListView 有一个监听器,用于检测组何时折叠,称为 OnGroupCollapsedListener (doc)。组折叠后,将调用您在此监听器中放置的任何代码。
有谁知道我如何在组折叠之前调用一些代码???也许是一个 BeforeCollapsedListener???
最佳答案
您可以使用这个简短的 fragment 来保存组状态并在每次单击组时检查它们。在组展开和/或折叠之前注册组点击。
private boolean[] mGroupStates;
@Override
public void onCreate(Bundle savedInstanceState) {
...
mGroupStates = new boolean[mExpAdapter.getGroupCount()]
mExpList.setOnGroupClickListener(new ExpandableListView.OnGroupClickListener() {
@Override
public boolean onGroupClick(ExpandableListView parent, View v, int groupPos, long id) {
// Switch boolean
mGroupStates[groupPos] = !mGroupStates[groupPos];
// Check expanding or collapsing
if (mGroupStates[groupPos]) {
// group is being expanded
} else {
// group is being collapsed
}
// False will make sure that the click continues with it's operation
return false;
}
});
...
}
关于android - ExpandableListView OnGroupCollapseListener - 崩溃发生之前的任何监听器/观察器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25455954/