请问为何我在Fragment注册了
lv_files = (ListView) v.findViewById(R.id.lv_files);
this.registerForContextMenu(lv_files);
也重写了
@Override
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenuInfo menuInfo) {
menu.add(Menu.NONE, 1, Menu.NONE, "编辑").setIcon(android.R.drawable.ic_menu_edit);
menu.add(Menu.NONE, 2, Menu.NONE, "删除").setIcon(android.R.drawable.ic_menu_delete);
super.onCreateContextMenu(menu, v, menuInfo);
}
但是为什么长按list的item项还是弹出框来
list是没问题的,已经可以显示出来的,还是Fragment和Activity的方法有区别?
你的代码已经成功地添加了context menu, 之所以长按无反应,原因很可能是list item有组件截获了list的点击事件。
检查list item的布局文件,应该可以看到
android:focusable="true"
. 把它设置为false.