如何找到用户将全景图滑动到哪个方向?(Windows Phone)
本文关键字:方向 Windows Phone 用户 何找 全景 | 更新日期: 2023-09-27 18:27:40
我有一个全景页面。如何查找用户在哪一侧滑动全景?我需要知道滑动的方向
void DialogPanorama_ManipulationStarted(object sender, ManipulationStartedEventArgs e)
{
int selectedIndex = this.DialogPanorama.SelectedIndex;
int count = this.DialogPanorama.Items.Count;
for (int i = 0; i < count; ++i)
{
{
FeedItemViewModel curItem = this.DialogPanorama.Items[i] as FeedItemViewModel;
if (curItem != null)
{
if (Math.Abs(i - selectedIndex) > 1 && Math.Abs(Math.Abs(i - selectedIndex) - count) > 1)
{
curItem.ItemVisibility = System.Windows.Visibility.Collapsed;
}
else
{
curItem.ItemVisibility = System.Windows.Visibility.Visible;
}
}
}
}
}
更新:
我认为应该使用
Point startPoint = e.ManipulationOrigin;
MouseState ms = Mouse.GetState();
我要做的是在两个不同的时刻(短)获得触摸的坐标。如果坐标B的横坐标高于坐标A的横坐标,则用户想要向左滑动。如果堇青石B的横坐标低于坐标A的横坐标,则用户希望向右滑动。
看看这里(获得触摸位置):
http://msdn.microsoft.com/en-us/library/bb197572.aspx
编辑其他方式:
推断幻灯片方向的简单方法:
private void Panorama_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
OldPage = ActualPage;
ActualPage = panorama.SelectedIndex;
MessageBox.Show("Old page: " + OldPage + "'n Actual Page: " + ActualPage);
if (OldPage < ActualPage)
MessageBox.Show("Direction of the slide: Right");
else if (OldPage > ActualPage)
MessageBox.Show("Direction of the slide: Left");
// else if( some other specific condition...)
}
private int OldPage { get; set; }
private int ActualPage { get; set; }