Android 为任意视图填充ContextMenuInfo
我有一个任意视图的列表,只要长时间点击就会显示关联菜单,这些视图不一定是ListView的子视图。With my code contextmenu将显示,但问题是在(活动的onContextItemSelected)菜单项下选择菜单项时。getMenuInfo()未设置(null) 然后我尝试了下面的方法Android 为任意视图填充ContextMenuInfo,android,Android,我有一个任意视图的列表,只要长时间点击就会显示关联菜单,这些视图不一定是ListView的子视图。With my code contextmenu将显示,但问题是在(活动的onContextItemSelected)菜单项下选择菜单项时。getMenuInfo()未设置(null) 然后我尝试了下面的方法 class MyView{ public MyView(Context context){ super(context); setOnCreateContextMen
class MyView{
public MyView(Context context){
super(context);
setOnCreateContextMenuListener(this);
}
@Override
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenuInfo menuInfo) {
menuInfo = new AdapterView.AdapterContextMenuInfo(v,
getPosition(v), v.getId());
getActivity().onCreateContextMenu(menu, v, menuInfo);
}
}
然后,在负责实际显示上下文菜单和处理单击的活动中,在onContextItemSelected中,MenuItem.getMenuInfo()仍然为NULL,这显然不是活动类的onCreateContextMenu下的NULL。我的问题是,如果我使用Activity类的registerForContextMenu()创建上下文菜单,或者按照上述代码创建上下文菜单,那么在这两种情况下,我们如何在MenuItem.getMenuInfo()中填充一些数据
@Override
protected ContextMenuInfo getContextMenuInfo() {
return null;
}
在那里,您可以返回任何值,例如AdapterView.AdapterContextMenuInfo的实例