Domanda

Sto cercando di mettere una casella di controllo in ExpandableListView. Come lo faccio? Rivolgo BaseExpandableListAdapter e mettere il seguente in getGroupView ():

@Override
public View getGroupView(int groupPosition, boolean isExpanded, View convertView,
   ViewGroup parent) {
    View view = convertView == null ?
      context.getLayoutInflater().inflate(R.layout.onet_head, null) : convertView;
     ((TextView)view.findViewById(R.id.onetText)).setText(cats.get(groupPosition).value); 
    return view;
}

Si noti che gonfiato layout? Ecco dove sto mettendo TextView e CheckBox. Ho notato che l'immissione una casella di controllo nel mio gruppo di layout fila disabilita la funzionalità fila gruppo predefinito quando si fa clic sulla riga fa apparire un (figlio) Lista secondario. CheckBox sta funzionando come previsto, ma quando si fa clic al di fuori della così il clicca viene mai rilevato da CheckBox etere o OnGroupClickListener. Ho il sospetto che l'immissione CheckBox in fila gruppo in questo modo interferisce con il rilevamento di un evento / gestione, ma finora non sono in grado di rintracciarlo

Can qualcuno mi aiuti a risolvere questo? La casella di controllo funziona bene anche se inclusi i clic rilevare quando cliccando direttamente sulla casella

È stato utile?

Soluzione

Ogni volta che si inserisce un elemento che è attivabile in un elenco delle voci di elenco non rispondono più ai clic o qualcosa di simile. Per ogni elemento che si inserisce nella voce di elenco che è (pulsanti, caselle di controllo, ecc) focusable, è necessario impostare l'attributo android: attivabile su false.

ho avuto una domanda simile e che è stata la risposta per me. ListView Android personalizzato in grado di fare clic sugli oggetti

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top