滑动时“e.TotalManipulation.Translation”不一致

时间:2012-01-03 23:23:20

标签: windows-phone-7

我在WP7中开发的页面遇到了一些问题。基本上,我想左右“滑动”并有其他东西进入视野。但是,在滑动时(在模拟器或设备上),System.Diagnostics.Debug.WriteLine(delta.X.ToString)可以报告相反的值(从而导致错误的滑动​​)。所以我向右滑动它报告类似“-15”的东西,然后我再次向右滑动它报告“15”。一个是对的而另一个不是,但我的手指手势两次都相同。

可能导致这种情况的原因是什么?这是我的代码。我已经在另一个应用程序中测试了它,它没有任何问题。所以现在这让我想知道什么可能导致它报告截然不同的数字(再次导致错误的行动)。

Private Sub PlayerArea_ManipulationCompleted(sender As Object, e As System.Windows.Input.ManipulationCompletedEventArgs)
    If e.IsInertial Then
        e.Handled = True
        Dim delta As Point = e.TotalManipulation.Translation
        System.Diagnostics.Debug.WriteLine(delta.X.ToString)
        If delta.X < 0.0 Then
            p.MoveNext()
        ElseIf delta.X > 0.0 Then
            p.MoveBack()
        End If
    End If
End Sub

有没有其他人有这个问题?我在Binglehoo的所有地方都没有发现什么,甚至在这个问题上提到了其他人。

1 个答案:

答案 0 :(得分:1)

如果您不需要手动执行此操作,则可以使用XNA程序集中的HorizontalDrag gesture