Android实现mono的示例进程?

标签 android mono monodevelop xamarin.android

Java实现了OnClickListener,OnTouchListener这些进程怎么在mono的时候不容易发现?提前谢谢你...

public class MyClass implements OnClickListener, OnTouchListener {
    @Override
    public boolean onTouch(View v, MotionEvent event) {

        switch (event.getAction()) {
        case MotionEvent.ACTION_DOWN:

            break;
        case MotionEvent.ACTION_UP:

            break;
        default:

            break;
        }

        return false;
    }

    @Override
    public void onClick(View v) {

    }
}

如何使这个进程成为单进程?

最佳答案

将该示例直译为 C# 和适用于 Android 的 Mono 如下所示:

public class MyClass : Java.Lang.Object, View.IOnClickListener, View.IOnTouchListener
{
    public bool OnTouch(View v, MotionEvent e)
    {
        switch (e.Action)
        {
            case MotionEventActions.Down:
                break;
            case MotionEventActions.Up:
                break;
            default:
                break;
        }

        return false;
    }

    public void OnClick(View v)
    {
    }
}

虽然仍然可以按照 Java 约定以这种方式编写您的应用程序,但在 Mono for Android 中有更好的方法来完成此操作。在 Java 使用监听器接口(interface)的大多数情况下,Android 版 Mono 实际上会提供一个您可以处理的事件,它更易于使用(并且对 C# 更友好)。在此示例中,您希望处理 TouchClick View 上的事件:

view.Touch += (sender, args) =>
              {
                  switch (args.Event.Action)
                  {
                      case MotionEventActions.Down:
                          break;
                      case MotionEventActions.Up:
                          break;
                      default:
                          break;
                  }
              };
view.Click += (sender, args) =>
              {
              };

关于Android实现mono的示例进程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10933760/

相关文章:

android - 设置可见性后查看布局

android - 使用 startOffset 的动画反转

c# - MonoDevelop iPhone 模拟器在调试运行时加载退出,问题似乎与一个内容文件有关

c# - Mono 无法将 SHA1 识别为 RSA 签名的哈希算法

c# - IDE 外的外部终端/调试

monodevelop - 你如何让 Monodevelop 重新使用英语作为它的语言

Android N libusb_init 返回-1 未能初始化libusb

java - 在包 'layout_alignParentEnd' Activity_post.xml/DispatchActivity/res/layout 第 23 行中找不到属性 'android' 的资源标识符

c# - 使用 C# (Xamarin) 编写 Android 应用程序

c# - 无法加载类型 'System.Net.Security.SslStream'