Como añadir un PopUpMenu

En el siguiente ejemplo veremos como utilizar el widget PopUpMenu que nos permitirá mostrar un menú de acciones relativas a un ImageView, TextView o a cualquier View que este disponible en nuestra Activity. PopUpMenu se implementó junto a la API 11 de Android, Honeycomb, aunque también podemos usarlo con la librería de soporte v7.

Para el ejemplo cargaremos 4 imágenes en un LinearLayout(HorizontalScrollView) y añadiremos un PopUpMenu al tocar cualquiera de ellas. Para ello necesitaremos, por un lado un archivo xml que definirá las opciones del PopUpMenu, y por otro lado, escuchar el evento onClick de nuestras ImageViews para mostrarlo.

 

1- Creamos un archivo xml dentro de ‘res > menu’ con las opciones que queramos asignar :

2- Modificamos el evento onClick de nuestras imágenes para instanciar el PopUpMenu.

 Línea a línea :
7 : Instanciamos un nuevo PopUpMenu pasándole el contexto de la actividad y el View que viene dado por el evento onClick (línea 6).

8 : Añadimos un listener setOnMenuItemClickListener() para saber cuando se ha pulsado una opción del menú. Posteriormente con un switch identificamos la opción pulsada.

24 : Haciendo uso de inflate(Res.id) le pasamos nuestro archivo xml anteriormente creado.

25 : Y finalmente mostramos el PopUpMenu con show().

 

En el siguiente vídeo podéis ver el ejemplo funcional.

 

Mario Camí Author

Desarrollador de aplicaciones Android. Amante de todo lo Open Source, de los videojuegos y nuevas tecnologías. En mi tiempo libre comparto todo lo aprendido y lo que aprendo en el desarrollo de Android a modo de artículo en el blog. La información nos hará libres!