我有一个 viewFlipper,每个“翻转”中都有不同的 ListView。我已经制作了所有列表 registerForContextMenu(chosenList);
并且 longPress 菜单出现在我想要的每个列表中。
现在我想在不同的 ListView 中使用不同的上下文菜单。例如。一个包含网络信息的列表将在上下文菜单中包含与网络相关的选项,而包含 friend 的列表将在其上下文菜单中包含另一组选项。
我如何有效地做到这一点?这甚至可能吗?
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;
}
}
关于android - 具有不同上下文菜单的多个列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5006135/