2009-12-31 16 views
6

¿Sabes cómo cambiar el nombre del menú existente?cómo cambiar el nombre del elemento de menú existente?

Puedo renombrar cuando presiono el elemento de menú. Pero no sé cómo acceder al elemento del menú cuando presiono el botón.

Por favor consejo.

+0

Su pregunta no está nada clara. Parece que confunde los términos 'menú', 'elemento de menú' y tal vez 'botón'. ¿Puedes aclarar? –

Respuesta

27

Sería bueno si se puede aclarar la cuestión un poco, pero cada vez que el usuario pulsa el Menú en su dispositivo Android, mientras que el interior de una de sus actividades, el método se llama onPrepareOptionsMenu. La primera vez que se muestra el menú (es decir, una sola vez), se llama al método onCreateOptionsMenu.

Básicamente, el método onPrepareOptionsMenu es donde debe realizar cualquier cambio, como habilitar/deshabilitar ciertos elementos de menú, o cambiar el texto del elemento de menú según las circunstancias.

A modo de ejemplo:

@Override 
public boolean onPrepareOptionsMenu(Menu menu) { 

    // Check current message count 
    boolean haveMessages = mMessageCount != 0; 

    // Set 'delete' menu item state depending on count 
    MenuItem deleteItem = menu.findItem(R.id.menu_delete); 
    deleteItem.setTitle(haveMessages ? R.string.delete : R.string.no_messages); 
    deleteItem.setEnabled(haveMessages); 

    return super.onPrepareOptionsMenu(menu); 
} 
+2

Gracias por su respuesta. Encontré la solución: public boolean onMenuOpened (int featureId, menú Menu) estaría bien para mi caso. – AndroiDBeginner

+0

+1 para la etiqueta kbd, buena que no sabía;) – Guillaume

0

El onPrepareOptionsMenu es el lugar adecuado para realizar cambios en los elementos del menú.

+0

De los documentos parece que sí. ¿Alguna idea de para qué se podría usar el método onMenuOpened? También puedo cambiar mi menú en él. – barry

Cuestiones relacionadas