【问题标题】:Capture touch events in Xamarin.Forms for Android在 Xamarin.Forms for Android 中捕获触摸事件
【发布时间】:2014-12-11 23:29:47
【问题描述】:

我正在创建一个应用程序,该应用程序允许用户使用 Xamarin.Forms 拖放以将一个图像放在另一个图像之上。

在 iOS 上,我通过为它创建一个自定义 ContentView 和一个自定义渲染器,设法将一个可行的手势识别器渲染器组合在一起,然后基于 GestureRecognizers 元素将本机手势识别器附加到自身。为此,我禁用了默认的 EventTracker 并实现了我自己的,重写了 GetNativeRecognizer 方法

在自定义渲染器中:

public InteractiveContentViewRenderer () : base ()
{ 
  AutoTrack = false; 
  events = new InteractiveEventTracker (this); 
}

在自定义事件跟踪器中:

public InteractiveEventTracker (IVisualElementRenderer renderer) : base (renderer)
{
    this.Renderer = renderer; 
}

protected override MonoTouch.UIKit.UIGestureRecognizer GetNativeRecognizer (Xamarin.Forms.IGestureRecognizer recognizer)
{
    var gestureRecognizer = base.GetNativeRecognizer (recognizer);

    if (gestureRecognizer == null) {
// here I find my own native recognizer and return it
    }
}

然而,在 Android 上,到目前为止,我还没有想出如何实现同样的目标。 Android 中没有 EventTracker,我想我必须实现一些 Android 视图才能使其工作,但我目前还没有弄清楚。

有没有人设法在 Xamarin.Forms for Android 中破解触摸事件?我至少想知道 hack 的基本结构?

【问题讨论】:

    标签: xamarin xamarin.android xamarin.forms


    【解决方案1】:

    【讨论】:

    • 我还没有尝试过,但它看起来像我想要的,谢谢!
    • 第一个链接失效了。可以更新吗?
    猜你喜欢
    • 2014-08-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-12
    • 2012-06-10
    • 1970-01-01
    相关资源
    最近更新 更多