我正在使用可扩展列表 View 开发android应用程序。实际上我需要的是,我正在列出包含子项的组。

如果我选择了一个不可展开的组,则它应该展开,然后在我选择第二个组之后,应该折叠第一个组。我做了Google,但是找不到我想要的东西。请帮帮我。

最佳答案

将当前展开的组位置存储在变量中。在onGroupExpanded中,执行以下操作。

private int lastExpandedPosition = -1;
private ExpandableListView lv; //your expandable listview
...

lv.setOnGroupExpandListener(new OnGroupExpandListener() {

    @Override
    public void onGroupExpand(int groupPosition) {
            if (lastExpandedPosition != -1
                    && groupPosition != lastExpandedPosition) {
                lv.collapseGroup(lastExpandedPosition);
            }
            lastExpandedPosition = groupPosition;
    }
});

08-18 08:49