Mam stworzony ExpandableListView w którym wyświetlam kategorie i podkategorie. Po kliknięciu na którąś z podkategorii zaznaczam ją w ten sposób:
elv_CategoryList.setOnChildClickListener(new ExpandableListView.OnChildClickListener() {
@Override
public boolean onChildClick(ExpandableListView parent, View v, int groupPosition, int childPosition, long id) {
String selected = (String)cla.getChild(groupPosition,childPosition);
int position = parent.getFlatListPosition(ExpandableListView.getPackedPositionForChild(groupPosition, childPosition));
Log.e("selected", selected);
elv_CategoryList.setSelectedChild(groupPosition,childPosition,true);
boolean select = !elv_CategoryList.isItemChecked(position);
elv_CategoryList.setItemChecked(position, select);
cla.notifyDataSetChanged();
return true;
}
});
Podkategoria jest zaznaczona dobrze dopóki nie zacznie się zwijać lub rozwijać głównych kategorii. Podam przykład żeby było łatwiej zrozumieć:
- Kat1
- podkat1
- podkat2
- podkat3
- Kat2
- podkat1
Zaznaczam podkat1 z Kat2 (Kat1 jest zwinięta). Po rozwinięciu Kat1 mam zaznaczony element podkat2 z Kat1.
Znacie jakiś prosty sposób żeby to rozwiązać?