草庐IT

android - ExpandableListView OnGroupCollapseListener - 崩溃发生之前的任何监听器/观察器?

coder 2023-12-27 原文

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/

有关android - ExpandableListView OnGroupCollapseListener - 崩溃发生之前的任何监听器/观察器?的更多相关文章

随机推荐