在我的应用程序中,我有一个ListView
,我注册了上下文菜单。长按一下,我调用上下文菜单,从那里处理发生长按的项目。这工作正常。但是用户可以将项目添加到列表中(单独的功能,这里不涉及),“添加项目”是上下文菜单中的项目之一。这个项目不依赖于我长期点击的项目。在没有项目的情况下长按ListView,调用上下文菜单
活动开始时,列表中只有一个项目 - 在它下面列表为空。当我长时间点击该项目时,上下文菜单显示为我想要的,但是当我在列表的空白区域长按时,什么都不会发生。我使用的都是标准的代码:
itemList = (ListView)this.findViewById(R.id.order_items);
this.registerForContextMenu(itemList);
...
@Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) {
super.onCreateContextMenu(menu, v, menuInfo);
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.order_popup, menu);
menu.setHeaderTitle(null);
}
我怎样才能获得的上下文菜单弹出长单击列表中的空白?
你确定ListView占用整个屏幕的高度,即使列表是空的吗?我对此有疑问。 –
我已经在这里回答了类似的问题http://stackoverflow.com/questions/10447676/context-menu-for-blank-space-in-a-listview/10447941#10447941 – Luksprog
@Luksprog我看了一下那个答案,谢谢。但是,我不明白如何设置ListView的高度wrap_content将实现预期的结果。当我收到很多物品时,它们不适合放在屏幕上,所以布局会混乱。 –