Je veux cacher complètement le groupIndicator dans un ExpandableListView personnalisé.
L'exemple fourni ici n'a pas semblé fonctionner.
Il suggère de faire un sélecteur et d'utiliser expList.setGroupIndicator (sélecteur), que j'ai répliqué:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:Android="http://schemas.Android.com/apk/res/Android" Android:id="@+id/empty_icon">
<item Android:state_empty="true" Android:drawable="@Android:color/transparent"/>
<item Android:state_expanded="true" Android:drawable="@Android:color/transparent" />
<item Android:drawable="@Android:color/transparent" />
</selector>
Cela donne l'erreur suivanteERROR/AndroidRuntime(10675): Caused by: Android.content.res.Resources$NotFoundException: Resource is not a Drawable (color or path): TypedValue{t=0x12/d=0x0 a=2 r=0x7f0b0013}
La même chose est donnée par la suggestion similaire d'utiliser Android: id/empty à la place de color/transparent.
Comment puis-je cacher complètement l'indicateur de groupe?
Edit: Il se trouve que ce code fonctionne ... si vous le mettez dans le dossier des ressources pouvant être dessiné au lieu de la mise en page.
Avez-vous essayé de modifier l'attribut ExpandableListView
de Android:groupIndicator="@null"
?
Vous pouvez essayer ce code
listView = (ExpandableListView) view.findViewById (R.id.listView);
listView.setGroupIndicator(null);
listView.setChildIndicator(null);
J'ai eu le même problème et cela a résolu mon problème… .. Dans l'adaptateur de votre Listview, ajoutez ce qui suit à getGroupView.
if (groupPosition == 0) {
convertView = layoutInflater.inflate(R.layout.blank_layout, null);
} else {
convertView = layoutInflater.inflate(R.layout.group_indicator_cell,null);
}
Ceci effacera le 0ème groupe de la liste.
Où layout vierge est une mise en page avec une vue à l'intérieur ayant layout_height = 0dp . Cela fonctionne!