C# 如何在xamarin的列表视图中使用OnItemLongClick

C# 如何在xamarin的列表视图中使用OnItemLongClick,c#,android,xamarin.android,xamarin,C#,Android,Xamarin.android,Xamarin,我正在用xamarin android开发一个应用程序。在该应用程序中,我显示一个自定义列表。我想使用listView\u ItemLongClick(object sender,AdapterView.ItemLongClickEventArgs)显示一个弹出窗口在该弹出窗口中,我需要显示两个选项更新和删除。根据用户选择,我想做进一步的处理 有人能给我举个例子吗?如果你只是想在EventHandler中做一些事情,你可以做一些简单的事情,比如: var listView = FindViewB

我正在用xamarin android开发一个应用程序。在该应用程序中,我显示一个自定义列表。我想使用
listView\u ItemLongClick(object sender,AdapterView.ItemLongClickEventArgs)显示一个弹出窗口
在该弹出窗口中,我需要显示两个选项更新删除。根据用户选择,我想做进一步的处理


有人能给我举个例子吗?

如果你只是想在
EventHandler
中做一些事情,你可以做一些简单的事情,比如:

var listView = FindViewById<ListView>(Resource.Id.MyListView);
listView.ItemLongClick += listView_ItemLongClick;

private void listView_ItemLongClick(object sender, AdapterView.ItemLongClickEventArgs e)
{
    // Do your stuff here
}
接下来,您需要为
ItemLongClick
事件向
EventHandler
添加一段简单的代码:

var menu = new PopupMenu(this, (View)sender);
menu.Inflate(Resource.Menu.popupmenu);
menu.MenuItemClick += (s, a) =>
{
    switch (a.Item.ItemId)
    {
        case Resource.Id.pm_update:
            // update stuff
            break;
        case Resource.Id.pm_delete:
            // delete stuff
            break;
    }
};
menu.Show();

如果你想要一个
对话框
,那么有很多关于如何制作这些对话框的示例。

我正在阅读你的。。。在这里,你们说对话框在API级别8和13中不推荐使用,你们并没有提到任何关于弹出菜单的内容。这也被弃用了吗?你显然没有通读。我在
Activity
中提到了两个不推荐使用的方法,而不是
Dialog
本身?如果我在布局中生成它,会是这样吗?还有下面的错误:找不到类型或命名空间名称“PopupMenu”(是否缺少using指令或程序集引用?)是否必须添加引用>,正如我编写的那样,它是在API级别11中添加的,因此您的项目需要针对它,您可以在项目属性中更改它。popupmenu.xml需要在菜单文件夹中,是的。然后您需要重建它,然后才能在Resource.Designer.cs文件中获取它。我得到的“InsuranceRemember.Resource.Menu”不包含“pm\u更新”的定义,“InsuranceRemember.Resource.Menu”不包含“pm\u删除”的定义。您能帮忙吗?
var menu = new PopupMenu(this, (View)sender);
menu.Inflate(Resource.Menu.popupmenu);
menu.MenuItemClick += (s, a) =>
{
    switch (a.Item.ItemId)
    {
        case Resource.Id.pm_update:
            // update stuff
            break;
        case Resource.Id.pm_delete:
            // delete stuff
            break;
    }
};
menu.Show();