我在每个“翻转”中都有一个具有不同ListViews的viewFlipper。我已将所有列表设为registerForContextMenu(chosenList);
,并且longPress菜单根据需要显示在每个列表中。
现在,我想在不同的列表视图中具有不同的contextMenues。例如。一个包含网络信息的列表将在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
最佳答案
在您的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;
}
}