我被要求创建一个功能,要求您同时按下触摸界面的两个独立区域(按钮)。我无法确定这是否可行(好的谷歌)
我认为你可以简单地拦截touchstart
事件,如果设备支持多点触摸......并以这种方式挂钩,但我没有尝试过,我也不知道是否第二个touchstart
会被解雇吗?
有没有人有这方面的经验?
答案 0 :(得分:1)
可以同时使用触摸交互操作两个元素。但是,UWP中没有touchstart
事件。相反,您可能需要使用Manipulation events。以下是一个简单的示例:
XAML:
<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<Rectangle Name="BlueRectangle"
Width="200" Height="200" Fill="Blue"
ManipulationMode="All" HorizontalAlignment="Left" VerticalAlignment="Top" />
<Rectangle Name="RedRectangle"
Width="200" Height="200" Fill="Red"
ManipulationMode="All" HorizontalAlignment="Right" VerticalAlignment="Bottom" />
</Grid>
代码Dehind:
public sealed partial class MainPage : Page
{
private TranslateTransform dragBlueTranslation;
private TranslateTransform dragRedTranslation;
public MainPage()
{
this.InitializeComponent();
dragBlueTranslation = new TranslateTransform();
BlueRectangle.RenderTransform = this.dragBlueTranslation;
BlueRectangle.ManipulationDelta += (s, e) =>
{
dragBlueTranslation.X += e.Delta.Translation.X;
dragBlueTranslation.Y += e.Delta.Translation.Y;
};
dragRedTranslation = new TranslateTransform();
RedRectangle.RenderTransform = this.dragRedTranslation;
RedRectangle.ManipulationDelta += (s, e) =>
{
dragRedTranslation.X += e.Delta.Translation.X;
dragRedTranslation.Y += e.Delta.Translation.Y;
};
}
}
如果您只需要检测印刷机,可以尝试使用Tapped event。有关详细信息,请参阅Touch interactions。