PDA

Ver la Versión Completa : Añadir botones a un view


pablogarcia013
02/04/13, 11:04:46
Buenas, tengo una clase que extiende de relativeLayout que es como una especie de pestaña y que inicialmente tiene un imageButton en el medio. Esta clase se llama botonera y voy a tener unos cuantos objetos de esta.

Cuando pulso uno de estos botones pasa a estar seleccionado y se cambia su fondo,con respecto a los demás y me gustaría que tuviera 3 botones debajo del boton que tenia inicialmente (no se si me explicado bien). pongo un ejemplo:

tengo 5 botoneras y pulso encima de una, se cambia su fondo a rojo(mientras que los demás están en azul) y aparecen 3 botones debajo y cuando pulso otra botonera, estos botones desaparecen y aparecen unos nuevos debajo de la botonera que pulse.

Consigo que aparezcan los botones pero no los puedo ordenar y luego no consigo que desaparezcan al pulsar sobre otro, alguna idea para guiarme un poco?

Muchas gracias.

kriogeN
02/04/13, 11:40:01
Si lo he entendido bien, cada "botonera" es un RelativeLayout que contiene un ImageButton. Y quieres que al pulsar el ImageButton aparezcan 3 Buttons debajo del ImageButton. ¿Es así?

Pues yo lo haría haciendo que cada "botonera" contenga los 4 elementos, el ImageButton y los 3 Buttons. Inicialmente los 3 Buttons con Visibility.GONE. Y ya para el código tendrías que hace 2 cosas:

Primero, en el "onClick" del ImageButton que haga Visibility.VISIBLE a los 3 botones dentro de la misma botonera. Esto supongo que es lo que estarás haciendo ahora mismo.

Y luego para hacer que desaparezcan los botones en el resto de botoneras puedes hacerlo de 2 formas:

1) En el dispatchTouchEvent de la Activity recorrer todas las Views que sean "botoneras" que estén dentro de la Activity y hacer que sus botones desaparezcan. (Para tu caso es mala opción)

2) Hacer lo mismo de antes pero en el propio "onClick" del ImageButton (La mejor opción)

pablogarcia013
02/04/13, 12:04:21
Si eso es lo que inicialmente hago (lo del Visibility) pero se me montan unos encima de otros, no puedo ordenarlos uno debajo de otro sabes como ordenarlos??

y luego para hacer que desaparezcan tengo un metodo que me recorre toda las botoneras y si no es la que he pulsado hace todos a invisible, me deja visibles los de la primera botonera y los demas los hace invisible... es un poco raro no?

EDITO 1: ya soluccione lo de la visibilidad, lo unico que no consigo es ordenarlos.