长按Fragment List Item无法弹出上下文菜单context menu

坐看云起
  • 44

请问为何我在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的方法有区别?

回复
阅读 5.1k
1 个回答

你的代码已经成功地添加了context menu, 之所以长按无反应,原因很可能是list item有组件截获了list的点击事件。
检查list item的布局文件,应该可以看到android:focusable="true". 把它设置为false.

宣传栏