c# - 在 Windows Phone 8.1 中向左或向右滑动

标签 c# windows-phone-8.1

我想了解 Windows Phone 8.1 中的手势或水平滑动事件。我有下面的代码可以正常工作但不知道如何理解滑动的状态。无论是向右滑动还是向左滑动。所以我的问题是如何识别左右滑动?

void MainPage_PointerReleased(object sender, PointerRoutedEventArgs e)
        {
            var ps = e.GetIntermediatePoints(null);
            if (ps != null && ps.Count > 0)
            {
                gr.ProcessUpEvent(ps[0]);
                e.Handled = true;
                gr.CompleteGesture();
            }
        }
        void gr_CrossSliding(Windows.UI.Input.GestureRecognizer sender, Windows.UI.Input.CrossSlidingEventArgs args)
        {
            //How to know you swipe left and right

        }
        void MainPage_PointerMoved(object sender, PointerRoutedEventArgs e)
        {
            gr.ProcessMoveEvents(e.GetIntermediatePoints(null));
            e.Handled = true;
        }
        void MainPage_PointerPressed(object sender, PointerRoutedEventArgs e)
        {
            var ps = e.GetIntermediatePoints(null);
            if (ps != null && ps.Count > 0)
            {
                gr.ProcessDownEvent(ps[0]);
                e.Handled = true;
            }
        }

还有我的构造函数

Windows.UI.Input.CrossSlideThresholds cst = new Windows.UI.Input.CrossSlideThresholds();
cst.SelectionStart = 2;
cst.SpeedBumpStart = 3;
cst.SpeedBumpEnd = 4;
cst.RearrangeStart = 5;
gr.CrossSlideHorizontally = true;
gr.CrossSlideThresholds = cst;
gr.CrossSliding += gr_CrossSliding;

gr.GestureSettings = GestureSettings.CrossSlide;

最佳答案

一个想法是记住按下的第一个点在哪里,然后在释放时检查释放的位置并与内存的位置进行比较。这应该可以识别用户移动手指的方向。

此外,如果可能的话,您还可以考虑在使用操作 事件时使用Velocities - example at this post .

关于c# - 在 Windows Phone 8.1 中向左或向右滑动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28943229/

相关文章:

c# - Windows Phone 8.1 本地数据库

c# - 使用相机进行面部检测坐标

windows - 如何将 Windows Phone 应用程序复制到实际设备?

c# - Windows Phone 8.1 中的设备唯一 ID

c# - 无法加载 DLL 'db2app64.dll'

c# - 在 WPF 中将焦点设置在文本框上

c# - 使用 LINQ 确定该序列包含其他序列,顺序相同

c# - 来自计时器触发器的 Azure 函数输出服务总线绑定(bind)

c# - 获取网页上的所有 <img> 元素

xaml - 自定义 Windows Phone 8.1 消息对话框