Совместное использование контекстного меню между действиями - PullRequest
1 голос
/ 22 июня 2010

У меня есть два действия, которые оба содержат идентичное контекстное меню, созданное программно с помощью menu.add (int, int, int, CharSequence).Они оба используют onCreateContextMenu и onContextItemSelected.

Первое действие содержит ListView, когда пользователь долго нажимает на элемент, для этого элемента появляется контекстное меню.Второе занятие (подробный экран для каждого элемента в занятии 1) содержит кнопку, когда пользователь нажимает кнопку, появляется контекстное меню.

Я хотел бы поделиться кодом, который создает контекстное меню между этимидеятельность.Единственное, что разделяют эти действия, - это контекстное меню, поэтому создание суперкласса (например, ActivityOne расширяет ContextMenuActivity), который определяет методы onCreateContextMenu и onContextItemSelected, выглядит немного излишним.

Есть ли лучший способ разделения этих методов между действиями?

Ответы [ 2 ]

3 голосов
/ 31 августа 2010

расширить действие, переопределяющее элементы меню, а затем расширить это действие для других ваших действий. если вам нужно изменить меню между действиями, переопределите элементы меню в ваших новых действиях и вызовите super.

Руководство разработчика Android объясняет это для меню опций, но должно работать для контекстных меню и диалогов. http://developer.android.com/guide/topics/ui/menus.html

2 голосов
/ 22 июня 2010

Контекстное меню, вероятно, связано либо с конкретным видом, либо с контекстом. Вы можете определить свое меню в xml и накачать его в объект Menu в onCreateContextMenu.

Перейти к «Определить меню в XML»

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...