android - 我如何在 MonoDroid 中使用长按?

标签 android events mono xamarin.android

此刻我正在以这种方式使用长按:

button.SetOnLongClickListener(new MyLongClickListener());

public class MyLongClickListener : View.IOnLongClickListener
{
    public bool OnLongClick(View v)
    {
        //do something pretty cool
        return true;
    }

    public IntPtr Handle
    {
        get { throw new NotImplementedException(); }
    }
}

但是写一个类只是为了在 OnLongClick 方法中做一个简单的一两行似乎不是很聪明。所以我想知道是否有更好的解决方案?

最佳答案

编写监听器类的方法是在 Java 中实现的方法,这就是它在 Android 的 Mono 中公开的原因。也就是说,在 Android 的 Mono 中,您可以分配类型为 LongClickHandler 的委托(delegate)。到 LongClick属性(property),如果你愿意的话。如果您愿意的话。

view.LongClick = onLongClick;

private bool onLongClick(View view) 
{
    // do some stuff

    return true;
}

view.LongClick = (clickedView) =>
{
    // do some stuff

    return true;
};

关于android - 我如何在 MonoDroid 中使用长按?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7538405/

相关文章:

android - JAudioTagger 和 Android - 更改 mp3 中的值?

javascript - 使用 AppMobi 和事件

.net - 在 Linux 上编译 MonoDevelop 5.3 时出错

asp.net - 在 Mac 上使用 Azure 存储与 ASP.NET vNext

java - 使用 JSoup 抓取 Google 天气结果

java - 如何检测设备中是否已经安装了Activity,并在检测到Activity安装后准备资源?

java - Android Studio 无法识别我的资源目录

c# - .Net 的 Rx : how to combine Scan with Throttle

javascript - 我可以以某种方式将当前运行的 javascript 函数记录到 Chrome 开发者控制台中吗?

android - monodroid 和桌面应用程序的通用库