Статическое меню настроек

Я хочу создать статическое меню опций для всех моих экранов активности. Я не хочу переопределять onCreateOptionsMenu() в каждой деятельности.

поскольку Menu Класс представляет собой интерфейс с огромным количеством методов, сложно создать статический объект класса реализации.

Любой другой способ сделать то же самое?

1 ответ

Решение

Если я правильно прочитал ваш вопрос, вы хотите одно и то же меню во всех ваших действиях. Я могу придумать два способа сделать это:

  1. Создать подкласс Activity который реализует onCreateOptionsMenu() а также onOptionsItemSelected() (и, возможно, onPrepareOptionsMenu). Тогда есть все ваши Activity классы расширяют этот подкласс.

  2. Создайте статический метод где-то под названием что-то вроде populateOptionsMenu() это занимает Menu (и, вероятно, Context) в качестве аргументов. Ваш Activity классы могут затем назвать это из своих onCreateOptionsMenu() методы для заполнения Menu, Вам также понадобится соответствующий processItemSelected() статический метод, когда элементы были нажаты.

Вариант 1 кажется лучшим, так как для вызова статических методов не потребуется использовать тот же болгарный знак в ваших действиях.

Другие вопросы по тегам