Avisos

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

Respuesta
 
Herramientas
  #1  
Viejo 03/06/14, 13:17:51
Array

[xs_avatar]
Guixe94 Guixe94 no está en línea
Desarrollador
 
Fecha de registro: abr 2012
Localización: Barcelona, Catalunya
Mensajes: 900
Modelo de smartphone: HTC ONE y Galaxy Note 3
Tu operador: Orange
Ayuda con menu..

Hola he creado mi primera aplicación de android con Android Studio pero nose como crear un menu.. actualmente si pulso el boton de menu me sale una pestaña que pone "settings" que es lo que viene por defecto pero pulso y no sale nada, por que no se donde se configura ni donde se cambia el nombre ni nada..

a mi me gustaria hacer un menu lateral como tienen la mayoria de las aplicaciones actuales pero he estado mirando por google y no encuentro nada asi que pueda entender.. haber si alguien podria ayudarme..

adjunto la imagen del "menu" que tengo por defecto que tampoco se como se configura ni nada..

Gracias!

Imágenes Adjuntas
Tipo de Archivo: jpg Screenshot_2014-06-03-13-12-36.jpg (34.7 KB, 33 visitas)
Responder Con Cita


  #2  
Viejo 03/06/14, 16:50:31
Array

[xs_avatar]
kriogeN kriogeN no está en línea
Colaborador/a
· Votos compra/venta: (1)
 
Fecha de registro: oct 2010
Localización: Murcia
Mensajes: 4,637
Modelo de smartphone: Samsung Galaxy S7 Edge SM-G935F
Tu operador: Vodafone
Para el menú lateral tienes 2 opciones:

NavigationDrawer: https://developer.android.com/refere...werLayout.html

SlidingPaneLayout: https://developer.android.com/refere...aneLayout.html

El primero el menú se pone por encima de tu app al desplazarlo, sólo puedes desplazar el menú si pones el dedo justo en el borde de la pantalla.

El segundo el menú desplaza a la aplicación, puedes iniciar el desplazamiento desde cualquier lugar de la pantalla.
Responder Con Cita
  #3  
Viejo 03/06/14, 16:53:19
Array

[xs_avatar]
Guixe94 Guixe94 no está en línea
Desarrollador
 
Fecha de registro: abr 2012
Localización: Barcelona, Catalunya
Mensajes: 900
Modelo de smartphone: HTC ONE y Galaxy Note 3
Tu operador: Orange
Y para que al puksar el boton fisico de menu me aparezca el menu ese y no el otro que tendria que cambiar? Y eso tendria que anyadirlo a todos los layouts y sus correspondientes .java? Esque tengo mas de 50...
Responder Con Cita
  #4  
Viejo 03/06/14, 17:19:46
Array

[xs_avatar]
oxot oxot no está en línea
Usuario muy activo
 
Fecha de registro: may 2010
Localización: Santiago
Mensajes: 741
Modelo de smartphone: Xiaomi RedRice
Tu operador: Pepephone
Para crear un navigation drawer puedes seguir estos consejos:
http://developer.android.com/trainin...av-drawer.html
como ves, tienes que modificar los layouts dónde quieras que aparezca el menú. El DrawerLayout tiene que ser el padre de todos.
Si quieres un menú normal, aquí: http://developer.android.com/guide/topics/ui/menus.html
Y en cuanto a los .java, pues depende de si son fragments (puedes poner el menú sólo en main) o son activities. Si cada uno es una activity independiente... te va a llevar algo de tiempo. En este caso yo te recomendaría:
1) Crear una Base_Activity extendes Activity
Poner aquí todos tus métodos comunes, como puede ser los del menús
2) Cada una de tus activities, en lugar de heredar de Activity, hereden de Base_Activity dónde ya tienes declarado el menú y si quieres haces un Override para ciertas activities que quieras con un menú diferente

No sé si esto cuadra en tu app pero no se me ocurre otra cosa

Última edición por oxot Día 03/06/14 a las 17:21:53.
Responder Con Cita
  #5  
Viejo 03/06/14, 17:22:33
Array

[xs_avatar]
Guixe94 Guixe94 no está en línea
Desarrollador
 
Fecha de registro: abr 2012
Localización: Barcelona, Catalunya
Mensajes: 900
Modelo de smartphone: HTC ONE y Galaxy Note 3
Tu operador: Orange
Lo de la base activy seria crear un .java predeterminado y luego indicarle a todos los layouts el mismo .java? Es eso? No tenia ni idea que se podia hacer..
Responder Con Cita
  #6  
Viejo 03/06/14, 17:33:08
Array

[xs_avatar]
oxot oxot no está en línea
Usuario muy activo
 
Fecha de registro: may 2010
Localización: Santiago
Mensajes: 741
Modelo de smartphone: Xiaomi RedRice
Tu operador: Pepephone
 Cita: Originalmente Escrito por Guixe94 Ver Mensaje
indicarle a todos los layouts el mismo .java? Es eso?
No entiendo esto que preguntas, lo siento.
El layout se indica dentro de cada .java donde requieras un layout. No indicas el layout en el .java.

Cada una de tus pantallas son activities o fragments?
Responder Con Cita
  #7  
Viejo 03/06/14, 17:33:57
Array

[xs_avatar]
Guixe94 Guixe94 no está en línea
Desarrollador
 
Fecha de registro: abr 2012
Localización: Barcelona, Catalunya
Mensajes: 900
Modelo de smartphone: HTC ONE y Galaxy Note 3
Tu operador: Orange
Todas son activities no tengo ningun fragment ya que no acababa de entender como hacerlos..
Responder Con Cita
  #8  
Viejo 03/06/14, 17:46:08
Array

[xs_avatar]
oxot oxot no está en línea
Usuario muy activo
 
Fecha de registro: may 2010
Localización: Santiago
Mensajes: 741
Modelo de smartphone: Xiaomi RedRice
Tu operador: Pepephone
Pues entonces, te remito a lo de arriba. O modificas cada layout para tener un DrawerLayout como padre de tu layout o usas un menú "estándar" (como los android anteriores) que se crea tal que así:
http://developer.android.com/guide/t...l#options-menu

En cuanto a lo que te decía, como esto tienes que hacer en cada activity yo te recomendaría crear una activity padre que aglutine todos los métodos comunes (dónde yo incluiría onCreateOptionsMenu, onOptionsItemSelected ...).
Luego haría que cada una de tus activities hereden de esta clase padre que has creado. Así, todas las clases hijas, tendrán ya implementados los métodos de menú que has declarado en la padre. Y creo que nada más. Te dará un poco de trabajo pero nada más.

Responder Con Cita
Gracias de parte de:
  #9  
Viejo 03/06/14, 17:48:13
Array

[xs_avatar]
Guixe94 Guixe94 no está en línea
Desarrollador
 
Fecha de registro: abr 2012
Localización: Barcelona, Catalunya
Mensajes: 900
Modelo de smartphone: HTC ONE y Galaxy Note 3
Tu operador: Orange
 Cita: Originalmente Escrito por oxot Ver Mensaje
Pues entonces, te remito a lo de arriba. O modificas cada layout para tener un DrawerLayout como padre de tu layout o usas un menú "estándar" (como los android anteriores) que se crea tal que así:
http://developer.android.com/guide/t...l#options-menu

En cuanto a lo que te decía, como esto tienes que hacer en cada activity yo te recomendaría crear una activity padre que aglutine todos los métodos comunes (dónde yo incluiría onCreateOptionsMenu, onOptionsItemSelected ...).
Luego haría que cada una de tus activities hereden de esta clase padre que has creado. Así, todas las clases hijas, tendrán ya implementados los métodos de menú que has declarado en la padre. Y creo que nada más. Te dará un poco de trabajo pero nada más.

Y como se crearia esa clase padre? Osea como hago que despues las activities hereden de esa?

Gracias por tu ayuda!
Responder Con Cita
  #10  
Viejo 03/06/14, 17:52:35
Array

[xs_avatar]
oxot oxot no está en línea
Usuario muy activo
 
Fecha de registro: may 2010
Localización: Santiago
Mensajes: 741
Modelo de smartphone: Xiaomi RedRice
Tu operador: Pepephone
Eso es java básico
La herencia se realiza con la palabra clave 'extends' en la declaración de la clase, tu tendrás algo así:

class MiClase extends ClasePadre {
...
}
seguro que ahora tus clases hacen 'extends' de Activity, que es una clase base de android y, por tanto, puedes usar métodos que tu no has declarado pero sí están declarados en la clase padre.
Un ejemplo de herencia:
http://codigomaldito.blogspot.com.es...a-en-java.html

Si buscas Java herencia tendrás cuatro mil tutoriales.
Responder Con Cita
Gracias de parte de:
  #11  
Viejo 03/06/14, 17:55:40
Array

[xs_avatar]
Guixe94 Guixe94 no está en línea
Desarrollador
 
Fecha de registro: abr 2012
Localización: Barcelona, Catalunya
Mensajes: 900
Modelo de smartphone: HTC ONE y Galaxy Note 3
Tu operador: Orange
Vale muchas gracias! Te sorprendera pero no tengo ni idea de java la app la ido haciendo a base de buscar en google cada cosa que queria y ir haciendo trocito a trozito.. por lo tanto solo se lo que tiene mi app lo demas ni idea de nada jeje. Espero ir aprendiendo.

Muchas gracias por todo!
Responder Con Cita
  #12  
Viejo 03/06/14, 18:29:58
Array

[xs_avatar]
kriogeN kriogeN no está en línea
Colaborador/a
· Votos compra/venta: (1)
 
Fecha de registro: oct 2010
Localización: Murcia
Mensajes: 4,637
Modelo de smartphone: Samsung Galaxy S7 Edge SM-G935F
Tu operador: Vodafone
Puedes hacer que al pulsar el botón menú se despliegue el menú lateral, sólo hay que capturarlo y que ejecute la acción de abrir el panel.
Responder Con Cita
  #13  
Viejo 03/06/14, 18:33:28
Array

[xs_avatar]
Guixe94 Guixe94 no está en línea
Desarrollador
 
Fecha de registro: abr 2012
Localización: Barcelona, Catalunya
Mensajes: 900
Modelo de smartphone: HTC ONE y Galaxy Note 3
Tu operador: Orange
 Cita: Originalmente Escrito por kriogeN Ver Mensaje
Puedes hacer que al pulsar el botón menú se despliegue el menú lateral, sólo hay que capturarlo y que ejecute la acción de abrir el panel.
Y eso como se hace? Perdon por la ignorancia..
Responder Con Cita
  #14  
Viejo 03/06/14, 18:51:04
Array

[xs_avatar]
kriogeN kriogeN no está en línea
Colaborador/a
· Votos compra/venta: (1)
 
Fecha de registro: oct 2010
Localización: Murcia
Mensajes: 4,637
Modelo de smartphone: Samsung Galaxy S7 Edge SM-G935F
Tu operador: Vodafone
Aquí lo tienes ya hecho para DrawerLayout, para SlidingPaneLayout es prácticamente igual:

public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_MENU) {

if (mDrawerLayout.isDrawerOpen(mDrawerList)) {

mDrawerLayout.closeDrawers();
} else {
mDrawerLayout.openDrawer(Gravity.RIGHT);
}
return true;
} else {
return super.onKeyDown(keyCode, event);
}
}
Responder Con Cita
Los siguientes 2 usuarios han agradecido a kriogeN su comentario:
Respuesta

Estás aquí
Regresar   Portal | Indice > Todo sobre Android > Programación y Desarrollo para Android



Hora actual: 17:09:51 (GMT +2)



User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.

Contactar por correo / Contact by mail / 邮件联系 /