Расширяемый просмотр списка сворачивает другие группы при нажатии на пустую группу

У меня проблема. Я использовал этот код, чтобы свернуть все группы, кроме выбранной группы, в расширяемом списке android:

mExpandableListView.setOnGroupExpandListener(new ExpandableListView.OnGroupExpandListener() {
            @Override
            public void onGroupExpand(int groupPosition) {
                if (lastExpandedPosition != -1 && groupPosition != lastExpandedPosition) {
                    mExpandableListView.collapseGroup(lastExpandedPosition);
                }
                lastExpandedPosition = groupPosition;
            }
        });

но некоторые группы пусты, поэтому я хочу, чтобы щелчки по пустым группам не закрывали другие группы. Спасибо

0
0
70
1

Ответы 1

Попробуй это:

    mExpandableListView.setOnGroupExpandListener(new ExpandableListView.OnGroupExpandListener() {
        @Override
        public void onGroupExpand(int groupPosition) {
            ExpandableListViewAdapter adapter = (ExpandableListViewAdapter)mExpandableListView.getAdapter();
            if (adapter.getChildrenCount(groupPosition) > 0) {
                if (lastExpandedPosition != -1 && groupPosition != lastExpandedPosition) {
                    mExpandableListView.collapseGroup(lastExpandedPosition);
                }
                lastExpandedPosition = groupPosition;
            }
        }
    });

Пожалуйста, измените тип адаптера, чтобы он соответствовал вашему. Надеюсь, это поможет!

Другие вопросы по теме