Intereting Posts
Черный текст на темном фоне на Нуге (android.R.layout.simple_spinner_item) Добавление зависимости kSOAP к проекту Gradle Внешняя служба Android из библиотеки (AAR, а не общая служба) GetSupportedPictureSize () возвращает значение, которое фактически не поддерживается Nexus4 Как правильно наполнить XML-Layout-File внутри CustomGroup? В конструкции Android gradle измените содержимое strings.xml во время сборки AudioTrack: play () вызван неинициализированным AudioTrack Android: Как проверить, доступен ли сервер? ReceiverRestrictedContext не может быть добавлен в android.app.Activity Android layout: этот тег и его дочерние элементы могут быть заменены одним <TextView /> и составным чертежом Дальнейшее объяснение IntentService Android: LocationManager динамически регулирует пороговые значения minTime / minDistance Кнопка Android Radio Android: Как сделать приятную анимацию сердечного ритма? У указанного ребенка уже есть родитель. Вы должны сначала вызвать removeView () родителя ребенка

Разница между «onMenuItemSelected» и «onOptionsItemSelected»

Может кто-то объяснить мне разницу между:

onMenuItemSelected (int featureId, MenuItem item)
http://developer.android.com/reference/android/app/Activity.html#onMenuItemSelected%28int,%20android.view.MenuItem%29

а также

onOptionsItemSelected (MenuItem item)
http://developer.android.com/reference/android/app/Activity.html#onOptionsItemSelected%28android.view.MenuItem%29

В Android? Я обнаружил, что кто-то переопределяет оба метода.

 // Reaction to the menu selection @Override public boolean onMenuItemSelected(int featureId, MenuItem item) { switch (item.getItemId()) { case R.id.insert: createTodo(); return true; } return super.onMenuItemSelected(featureId, item); } @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.insert: createTodo(); return true; } return super.onOptionsItemSelected(item); } 

Источник: http://www.vogella.de/articles/AndroidSQLite/article.html

Solutions Collecting From Web of "Разница между «onMenuItemSelected» и «onOptionsItemSelected»"

Android знает о нескольких типах меню (например, меню опций и контекстное меню). onMenuItemSelected – это общий обратный вызов. Вам не нужно использовать это обычно. onOptionsItemSelected – это обратный вызов меню параметров, а onContextItemSelected – это обратный вызов контекстного меню. Вместо этого используйте эти два конкретных.

Используя ADT 17 (версия 4.2), onOptionsItemSelected вызов onOptionsItemSelected позволит пользователю получить доступ к опциям меню из любого контекста, включая кнопку «Меню» и панель действий. Начиная с версии 3.0 Android, предпочтительным методом является onMenuItemSelected действий, к которой можно получить доступ из onMenuItemSelected . Если вы разрабатываете приложение, поддерживающее версии 2.3 или ранее, чем onOptionsItemSelected , вы хотите пойти.

Если посмотреть на код, onMenuItemSelected можно вызвать с помощью меню «Параметры» (кнопка «Меню») или «Контекстное меню». В основном это просто переводит клики на другие соответствующие методы.

Посмотрите на код здесь: http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/1.5_r4/android/app/Activity.java#2078