android - 列出项目打开上下文菜单

时间:2009-12-24 15:09:19

标签: android

我是Android新手。我有一个项目列表,并尝试将单个上下文菜单关联到每个列表项。设置了setListAdapter和onListItemClick但是当我点击任何列表项时,我总是得到相同的上下文菜单。理想情况下,列表项A应该在cliccked时触发菜单A,列表项B应该得到菜单B.无法弄清楚如何做到这一点。有人可以帮我找一个我可以用来学习如何操作的示例代码吗?

非常感谢和快乐的圣诞节,

斯特凡诺

2 个答案:

答案 0 :(得分:4)

我没有任何显示该技术的示例代码 - 我最好的例子是我为咨询客户做的事情。

但是,让我指出this sample project使用上下文菜单并将其用作此解释的基础。

您需要在onCreateContextMenu()中返回自定义菜单。如果您始终在此处返回相同的菜单,您将始终看到相同的菜单。要确定要显示的菜单,您需要知道哪个列表项是长按的。对于ListView的上下文菜单,您可以将提供给ContextMenu.ContextMenuInfo的{​​{1}}投射为onCreateContextMenu()。该对象可以告诉您列表中长按的项目的位置和AdapterView.AdapterContextMenuInfo,因此您可以选择正确的菜单。

在上面链接的示例代码中,我在_ID进行了转换,因此我可以知道用户正在删除哪个项目。但是,同样的演员在onContextItemSelected()中工作。

答案 1 :(得分:1)

Android团队最近发布了一些新样本。我相信你要做的事情有一个很好的例子here