【问题标题】:How to detect Left swipe and Right swipe for Stacklayout in Xamarin.Forms?如何在 Xamarin.Forms 中检测 Stacklayout 的左滑动和右滑动?
【发布时间】:2015-01-17 21:55:18
【问题描述】:

我一直在尝试检测 stacklayout 的左滑和右滑。我需要帮助的事情是,

  1. 创建 stacklayout 渲染器以添加滑动手势。
  2. 如何检测用户向左或向右滑动。

请提供适用于跨平台的解决方案。

stacklayout 渲染器 提供示例将非常有助于在 xamarin.forms 中实现滑动功能

【问题讨论】:

    标签: c# android ios xamarin.forms swipe-gesture


    【解决方案1】:

    我已经在 GitHub 上完成了示例 repo,请告诉我你的想法? https://github.com/tkowalczyk/SimpleCustomGestureFrame

    【讨论】:

    • 很好。它服务于目的。感谢您的回购。非常有用的一个,但必须尝试检测 carasoul 页面内的滑动?在 carasoul 页面中未检测到水平滚动,因为它已经具有滑动手势。刚刚分享了这个事实,因为我注意到了..禁用 carasoul 的手势将解决这个问题..再次感谢.. :)
    • 我必须重写 DispatchTouchEvent 并从那里调用 GestureDetector 才能让它工作。公共覆盖 bool DispatchTouchEvent(MotionEvent e) { _detector.OnTouchEvent(e);返回 base.DispatchTouchEvent(e); }
    • Rodolfo De Los Santos :+1:
    【解决方案2】:

    StackLayout 像所有其他布局类一样没有渲染器,因为布局完全由 Xamarin.Forms 本身处理,无需任何本机布局引擎的帮助。

    您可能会做的是为Frame 实现自定义渲染器并在其上实现滑动手势。然后,您可以将您的StackLayout 放入Frame,您应该就可以解决了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-07-23
      • 2012-08-29
      • 2018-12-31
      • 2011-10-02
      • 1970-01-01
      • 2013-11-24
      • 2019-12-22
      • 2012-10-17
      相关资源
      最近更新 更多