2012-03-26 26 views
13

ho un ExpandableListActivity con un adattatore personalizzato.in listview espandibile android

se la riga personalizzata dell'adattatore contiene un'immagineViewall è fatto, ma se cambio questa vista da imageView a imageButton, la listview espandibile non si espande.

Esiste un metodo per inserire un pulsante su cui fare clic e l'espandibile non perde la funzionalità da espandere?

risposta

19

Il pulsante dovrebbe essere non focalizzabile. Nella vostra listView.setOnItemClickListener (non nel layout xml !!):

Button button = (Button) view.findViewById(R.id.yourButton); 
//where button is the button on listView, and view is the view of your item on list 

button.setFocusable(false); /// THIS IS THE SOLUTION 

button.setOnClickListener(new Button.OnClickListener() { 
    public void onClick(View v) { 
     //button functionalty ... 
    } 
}); 
+0

grazie !! non preoccuparti per te inglese, il mio è peggio;) – thenosic

+0

(Buttom) dovrebbe essere (Button) – pahan

+1

ancora un altro momento del wtf per Android –

1

È possibile impostare il 'attivabile' non attribuiscono solo nella classe, ma nel xml così, almeno si sta lavorando per me.

<Button 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:focusable="false"/>