是否可以实现5次点击命令?或长按图像

时间:2018-05-04 11:06:18

标签: xamarin.forms

<Image HorizontalOptions="Center" WidthRequest="150"  Source="AppLogoWhite.png">
                    <Image.GestureRecognizers>
                        <TapGestureRecognizer
                      Tapped="OnTapGestureRecognizerTapped"
                      NumberOfTapsRequired="2" />
                    </Image.GestureRecognizers>
                </Image>

它按预期工作。但是,当我将NumberOfTapsRequired从2更改为5时,它不再起作用。这种行为有望吗?是否可以实现5次点击命令? 或长按图像?

1 个答案:

答案 0 :(得分:1)

我认为在Android上存在一个问题,或者可能是有意的行为,它不允许您设置高于2的值。

当然,解决这个问题的一种方法是在您的点击事件中实施一个对您而言很重要的机制。

在您的代码隐藏中添加一个计数器:private int _tapCounter = 0;

每次点击都会增加:

private void OnTapGestureRecognizerTapped(object sender, EventArguments EventArgs)
{
    _tapCounter++;

   if (_tapCounter == 5)
   {
       _tapCounter = 0;
       DoStuff();
   }
}

当然,长按手势也是一种选择,但您需要自己使用外部库来实现它。例如MR.Gestures