19 octubre 2010

Menú de Opciones en Androide

El menú de opciones es revelado presionando la tecla MENÚ del dispositivo (celular), cuando este menú se abre, se muestra el menú de iconos, con las seis primeras opciones del menú, si existen más de seis opciones, entonces las opciones que no caben en el menú son mostradas en el menú ampliado a través de la opción “Más” del menú, las opciones del menú ampliado son añadidas automáticamente cuando hay más de seis opciones en el menú.

En el menú de opciones es donde se deben incluir las opciones básicas de la aplicación y las opciones de navegación necesarias (pantalla inicial, ajustes de la aplicación, etc.), también puede incluir submenús para organizar las funciones suplementarias de cada opción del menú.

Cuando este menú es abierto por primera vez, Androide llama al método onCreateOptionsMenu() de la Actividad. Sobrescriba este método en su Actividad para llenar el objeto de tipo Menú que usted desee mostrar. Se puede llenar el menú inflando un recurso de menú que fue definido en XML, o llamando al método add() para cada artículo que le gustaría mostrar en el menú. Este método añade un MenuItem y devuelve el objeto recién creado. Usted puede usar el MenuItem devuelto para poner las propiedades adicionales, tales como un icono, un atajo de teclado, y otros ajustes para el artículo.

Existen múltiples métodos add(), por lo general se usa el que acepta como argumento un itemid, este es un número entero que permite identificar el artículo durante una rellamada.

Cuando una opción del Menú de Opciones es seleccionada, se llama al método onOptionsItemSelected() de su Actividad. Esta rellamada le pasa el MenuItem que ha sido seleccionado. Usted puede identificar el artículo solicitando el itemId, con getItemId() que devuelve el número entero que fue asignado con el método add(). Una vez que se identifica la opción del menú, se puede tomar la acción apropiada.

Ver ejemplo de este procedimiento, donde se crea un menú de opciones y se maneja la selección de las opciones.

No hay comentarios: