+-
Android:如何为自定义视图创建一个ContextMenu
我想显示一个不属于AdapterView的自定义视图的ContextMenu.

我打了电话

myActivity.registerForContextMenu(myView);

并且ContextMenu已经显示出来.

但是我不知道如何访问myView中的数据

@Override
onContextItemSelected(MenuItem item) //...

我以为我可以在其中创建自定义menuInfo

@Override
onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) //...

这来自docs:“ menuInfo-有关应为其显示上下文菜单的项目的额外信息.该信息将根据v的类别而有所不同.”

谁能给我一个提示?

最佳答案
您的自定义视图类应重写 getContextMenuInfo()并返回一个实现 ContextMenuInfo的自定义对象(考虑到该接口没有成员,这不是很难!),并且该自定义对象包含您希望菜单单击处理程序获取的每个视图数据.

然后,可以通过调用item.getMenuInfo()并强制转换返回的值,从onContextItemSelected(MenuItem item)处获取此对象.

点击查看更多相关文章

转载注明原文:Android:如何为自定义视图创建一个ContextMenu - 乐贴网