studio - Android invalidateOptionsMenu() para API<11




popup menu android (2)

En API < 11 use el método supportInvalidateOptionsMenu()

ActivityCompat.invalidateOptionsMenu(MainActivity.this); para que mi elemento de menú "actualizar" pueda habilitarse / deshabilitarse automáticamente sin utilizar la opción "Menú" (imagine que el usuario deja el Menú abierto ... Necesito que el elemento de menú "Actualizar" se deshabilite automáticamente y se habilite a sí mismo) )

ActivityCompat.invalidateOptionsMenu(MainActivity.this) funciona bien en Android 11+. ¿Pero qué puedo usar para Android API <11? : S He buscado mucho pero no puedo encontrar una respuesta. ¿Puede alguien ayudarme en esto?

Esto funciona bien en Android API 11+, usando onPrepareOptionsMenu y ActivityCompat.invalidateOptionsMenu(MainActivity.this) . El problema es tratar de hacerlo en Android API <11.

Aquí está mi método onPrepareOptionsMenu :

@Override
public boolean onPrepareOptionsMenu(Menu menu) {
    if(menuRefreshEnable){
        menu.getItem(0).setEnabled(true);
    }
    if(!menuRefreshEnable){
        menu.getItem(0).setEnabled(false);
    }       
    return true;
}

Esto se devolverá verdadero si la API es superior o igual a 11 y, por lo tanto, es compatible. Antes de API 11, el menú se dibuja cuando se presiona el botón de menú, por lo que no hay necesidad de este método, ya que ocurre automáticamente.





menu