2012-03-26 22 views
13

tengo una ExpandableListActivity con un adaptador personalizado.botón en listview expandible android

si la fila personalizada del adaptador contiene una vista de imagen, pero si cambio esta vista de imageView a imageButton, la vista de lista expandible no se expande.

¿Hay algún método para hacer clic en un botón y la lista desplegable no pierde la funcionalidad para expandirse?

Respuesta

19

El botón debe ser no focuseable. En su listView.setOnItemClickListener (no en el diseño 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

gracias !! no se preocupe por usted Inglés, el mío es peor;) – thenosic

+0

(Buttom) debe ser (Button) – pahan

+1

otro momento wtf para Android –

1

puede establecer el 'enfocable' no atribuyen solo en la clase, pero en el xml, así, al menos que está funcionando para mí.

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