В чем разница между ContextMenuInfo.id и item.getItemId в обратном вызове onContextItemSelected ()? - PullRequest
0 голосов
/ 17 ноября 2011

В чем разница между ContextMenuInfo.id и item.getItemId в обратном вызове onContextItemSelected ()?

Как отобразить ContextMenu по моему AVD ?Спасибо !!

@Override
public void onCreateContextMenu(ContextMenu menu, View v,
                                ContextMenuInfo menuInfo) {
  super.onCreateContextMenu(menu, v, menuInfo);
  MenuInflater inflater = getMenuInflater();
  inflater.inflate(R.menu.context_menu, menu);
}

@Override
public boolean onContextItemSelected(MenuItem item) {
  AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo();
  switch (item.getItemId()) {
  case R.id.edit:
    editNote(info.id);
    return true;
  case R.id.delete:
    deleteNote(info.id);
    return true;
  default:
    return super.onContextItemSelected(item);
  }
}

1 Ответ

0 голосов
/ 17 ноября 2011

Раздуйте меню, прежде чем передать его в super.onCreateContextMenu.

ContextMenuInfo - это дополнительные данные, которые может настроить представление, инициировавшее контекстное меню, - поэтому есть кнопки редактирования и удаления с другим item.getItemId (), но info.id дает представление, которое использовалось для создания меню ( элемент для редактирования).

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