![]() |
|
Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android |
«
Tema Anterior
|
Siguiente tema
»
|
Herramientas |
#1
|
||||
|
||||
Crear layout y botones desde java
Hola a todos, estoy haciendo una aplicación en la que necesito crear varios linearlayout desde java y a esos layout añadirle botones.
Los linearlayout tendrán dentro dos botones y estarán dentro de un scrollwiew. ¿Es posible hacer esto? ¿o hay algún otro método para hacerlo que no sea desde el xml? |
|
#2
|
||||
|
||||
Prácticamente todo lo que puede hacerse en XML se puede hacer con objetos Java (tienes las clases LinearLayout, Button y todas las que te hagan falta).
Si te construyes el layout entero en código, entonces al setContentView le pasas el View que hayas creado en vez de la referencia al XML. Si lo que quieres es meter cosas nuevas en algún sitio del layout, puedes dejar un linearlayout vacío en algún sitio de tu XML y con código obtener la referencia con el findViewById de siempre. Teniendo la referencia al objeto ya puedes añadirle la jerarquía de Views que quieras por código. |
#3
|
||||
|
||||
Cita:
![]() |
#4
|
||||
|
||||
onClickListener y onLongClickListener
|
#5
|
||||
|
||||
Si, pero de que manera puedo poner los dos métodos en el mismo botón, ya que aunque le ponga el onlongclick en cuanto pulso el botón entra el el método onClick
|
#6
|
||||
|
||||
El OnClick sólo se ejecuta si pulsas y levantas, si se ejecuta sólo pulsando es OnTouch, si nada más tocar el botón se ejecuta el evento algo debes estar haciendo mal.
|
#7
|
||||
|
||||
Cita:
Te explico un poco como lo tengo hecho: tengo muchos botones creados desde java. Al pulsar el botón normalmente(pulsación corta) entra en el onclick, dentro de este tengo un switch con todos los case de los botones, al pulsar un botón obtengo la id del botón y entra en su case reproduciendo un sonido. En la clase tengo implementado el OnClickListener y el OnLongClickListener y tengo también los métodos onclick y onlongclick, y todo funciona bien excepto cuando dejo pulsado un botón, que no hace nada hasta que lo suelto y se activa el onclick normal. Espero que me hayas entendido |
#8
|
||||
|
||||
Pues no se, debería funcionar. Lo único que se me ocurre es que estés devolviendo false en lugar de true en el "onlongclick", aún así el código presente en el "onlongclick" debería ejecutarse.
|
Gracias de parte de: | ||
#9
|
||||
|
||||
Asegúrate de llamar al método setLongClickable(true) de cada botón, si no Android no se molesta en comprobar si es larga o corta y te lanza siempre el onClick.
EDIT: Y si los defines en XML, el atributo es android:longClickable |
Gracias de parte de: | ||
#10
|
||||
|
||||
Cita:
![]() Muchísimas gracias a los dos por las ayudas, así da gusto programar ![]() |
Respuesta |
![]() |
||||||
|
«
Tema Anterior
|
Siguiente tema
»
|
|
Hora actual: 22:14:28 (GMT +2)
HTCMania: líderes desde el 2007