编程折叠组ExpandableListViewExpandableListView

2023-09-12 01:27:22 作者:埋葬过去

当我展开一个新的组,可我崩溃的最后一个扩展的?

When I expand a new group, can I collapse the last one expanded?

推荐答案

尝试把这个在你的 ExpandableListAdapter 的ListView 是引用 ExpandableListView 本身。而 lastExpandedGroupPosition 里面定义了一个整数成员变量的 ExpandableListAdapter

Try putting this in your ExpandableListAdapter, listView is a reference to the ExpandableListView itself. And lastExpandedGroupPosition is a integer member variable defined inside your ExpandableListAdapter.

    @Override
    public void onGroupExpanded(int groupPosition){
        //collapse the old expanded group, if not the same
        //as new group to expand
        if(groupPosition != lastExpandedGroupPosition){
            listView.collapseGroup(lastExpandedGroupPosition);
        }

        super.onGroupExpanded(groupPosition);           
        lastExpandedGroupPosition = groupPosition;
    }