web-dev-qa-db-fra.com

Comment désactiver la réduction de l'effondrement d'une vue d'ensemble?

Je souhaite mettre en œuvre un ExpandableListView qui devrait être extensible uniquement après la mise en place de toutes les valeurs dans l'adaptateur. De plus, j'aimerais pouvoir désactiver l'effondrement de l'expandeur.

Puis-je réaliser cela dans un fichier Android XML Layout?

32
Jabeer

Vous pouvez définir un OnGroupClickListener qui retourne true, comme:

expandableList.setOnGroupClickListener(new OnGroupClickListener() {
  @Override
  public boolean onGroupClick(ExpandableListView parent, View v,
                              int groupPosition, long id) { 
    return true; // This way the expander cannot be collapsed
  }
});
101
추몽이

Il n'y a aucun moyen de savoir que cela soit fait de XML.

Vous pouvez ajouter un OnGroupClickListener à la ExpandableListView et consommez son événement si le groupe est déjà élargi:

myExpandableListView.setOnGroupClickListener(new OnGroupClickListener()
{
    @Override
    public boolean onGroupClick(ExpandableListView parent, 
        View v, int groupPosition, long id)
    {
        return parent.isGroupExpanded(groupPosition);
    }
});
6
rekaszeru