[Android] Изменение меню во время работы приложения

Автор: anon
19.06.2011 16:03

Структура меню (Options Menu) обычно задается в XML файле, находящемся в ресурсах приложения. Но иногда нужно изменить содержание меню во время работы программы.

 

Эти действия должны выполняться в методе onPrepareOptionsMenu, который будет вызываться системой всякий раз, когда пользователь открывает меню. К примеру есть некое действие, который нужно по желанию пользователя запустить или остановить, и его состояние описывается флагом process_status. Тогда метод выглядит примерно так:

@Override
public boolean onPrepareOptionsMenu(Menu menu) {
    if(process_status) {
        menu.findItem(R.id.start_stop).setTitle("Stop");
     } else {
        menu.findItem(R.id.start_stop).setTitle("Start");
    }
    return super.onPrepareOptionsMenu(menu);
}

В зависимости от статуса пункт меню называется либо Stop либо Start, идентификатор пункта меню в XML файле - start_stop.

Там же можно добавлять/удалять пункты меню, менять значки и т.п. Развлеките пользователя каждый раз новым неузнаваемым меню ;) и удивитесь рейтингу вашего приложения в маркете!

Подробнее о меню в Android

Обновлено 19.06.2011 16:13

 

Добавить комментарий


Защитный код
Обновить