我想在其中一个活动中使用8个按钮的上下文菜单,长按任意按钮应显示两个选项edit
和delete
。
我已经浏览了网上提供的一些示例,但它们都只显示了一个按钮及其上下文菜单。我有8个按钮,我可以为第一个按钮实现上下文菜单。我不知道如何才能完成所有按钮。
这是我的代码的一部分
@Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) {
super.onCreateContextMenu(menu, v, menuInfo);
menu.add(0, v.getId(), 0, "Edit Account");
menu.add(0, v.getId(), 0, "Delete Account");
}
和
@Override
public boolean onContextItemSelected(MenuItem item) {
if (item.getTitle() == "Action 1") {
function1(item.getItemId());
} else if (item.getTitle() == "Action 2") {
function2(item.getItemId());
} else {
return false;
}
return true;
}
这是我从教程中得到的。我不确定item.getItemId()
是什么?这是长按按钮的ID吗?如果不是我应该如何实现我的任务
答案 0 :(得分:0)
我得到了答案
在onCreateContextMenu
中,参数View v
是激活上下文菜单的视图。因此,我定义gloabl View
并将v
中的onCreateContextMenu
复制到该全局视图中,以后可以使用