Как программно изменить пункт в меню настроек? - PullRequest
1 голос
/ 04 мая 2011

Когда пользователь нажимает кнопку «Меню», я представляю несколько пунктов меню. Одним из них является кнопка «Выйти». Я хочу изменить текст между «Вход» и «Выход» в зависимости от логического значения, которое я отслеживаю. Как программно изменить текст в меню?

Ответы [ 2 ]

3 голосов
/ 04 мая 2011

Вы хотите переопределить функцию onPrepareOptionsMenu в Activity. Передан параметр меню, вы можете просто найти элемент меню, который хотите показать / скрыть (или изменить изображение и текст), и вернуть значение true.

onPrepareOptionsMenu

3 голосов
/ 04 мая 2011

Переопределить / реализовать обратный вызов onPrepareOptionsMenu(...). Измените то, что вы добавляете, в зависимости от вашего состояния входа.

В качестве альтернативы, я не проверял это, но, на мой взгляд, это работает: когда вы создаете свои пункты меню, сохраняйте дескриптор элемента Вход / Выход в переменной класса и просто обновляйте его, вызывая setTitle(...) по мере необходимости.

...