несколько списков с различным contextMenus - PullRequest
1 голос
/ 15 февраля 2011

У меня есть viewFlipper с различными ListViews в каждом "флип". Я сделал все списки registerForContextMenu(chosenList);, и меню longPress появляется в каждом из списков, как я хочу.

Теперь я хочу иметь РАЗНЫЕ контекстные меню в разных представлениях списка. например. один список с информацией о сети будет иметь связанные с сетью варианты в contextMenu, а список с друзьями будет иметь другой набор вариантов в своем contextMenu.

Как мне сделать это эффективно? это вообще возможно?

public void onCreateContextMenu(ContextMenu menu2, menu3, menu4, View v, ContextMenuInfo menuInfo) {
  super.onCreateContextMenu(menu2, menu3, menu4, v, menuInfo);
  menu2.setHeaderTitle("Quick Menu");
  menu3.setHeaderTitle("Menu3");
  menu4.setHeaderTitle("Menu4");
  MenuInflater inflater = getMenuInflater();
  inflater.inflate(R.menu.context_menu, menu2);
  inflater.inflate(R.menu.context_menu3, menu3);
  inflater.inflate(R.menu.context_menu4, menu4);
}

... или ...? как еще? это начинает сводить меня с ума в среднем мозге ...: D

1 Ответ

11 голосов
/ 15 февраля 2011

Внутри вашего onCreateContextMenu () сделайте что-то вроде:

switch(v.getId())
{
    case R.id.list1:
    {
        inflater.inflate(R.menu.context_menu1, menu)
        break;
    }
    case R.id.list2:
    {
        inflater.inflate(R.menu.context_menu2, menu)
        break;
    }   
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...