2012-08-29 10 views
5

Duplicar posible:
ExpandableListView - hide indicator for groups with no childrencómo ocultar el indicador ExpandableListView para los grupos que no tienen hijos

indicador de ocultar a los grupos que no tienen hijos

main.xml

<ExpandableListView 
android:id="@+id/elv" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:groupIndicator="@drawable/selector"> 
</ExpandableListView> 

selector.xml

<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:state_empty="true" android:drawable="@android:color/transparent"/> 
    <item android:state_expanded="true" android:drawable="@drawable/expanded" /> 
    <item android:drawable="@drawable/collapse" /> 
</selector> 

que no funciona para mis ICS, parece que el estado de todos los grupos se derrumbó están vacías

+0

Parece ser un error, porque getChildrenCount (int groupPosition) del adaptador nunca se llama para grupos colapsados. Entonces son tratados como vacíos. –

Respuesta

11

tiene un intento en esto:

getExpandableListView().setGroupIndicator(null); 

O de lo contrario,

if (getChildrenCount(groupPosition) == 0) { 
     indicator.setVisibility(View.INVISIBLE); 
    } 
else { 
     indicator.setVisibility(View.VISIBLE); 
     indicator.setImageResource(isExpanded ? R.drawable.group_expanded : R.drawable.group_closed); 
    } 
+0

dónde poner esta función? – Mahesh

+0

En 'getGroupView' – Swayam

+9

cómo obtener el indicador en getGroupView? – corban

Cuestiones relacionadas