如何在Xamarin.Forms中使用Tap Gesture调用另一个页面?

时间:2016-05-04 06:47:17

标签: xaml xamarin xamarin.forms uitapgesturerecognizer

我创建了一个图像按钮并在其中放置了一个Tap Gesture。我希望我的图像按钮可以调用另一个页面,但我不知道如何在不使用Navigation.PushAsync的情况下执行此操作,但它会导致我出现此错误" Android上不支持全局支持PushAsync ,请使用导航页面。"

这是我的XAML代码。

<Image Source="add.jpg">
  <Image.GestureRecognizers>
    <TapGestureRecognizer

            Tapped="TapGestureRecognizer_OnTapped"
            NumberOfTapsRequired="1" />
  </Image.GestureRecognizers>
</Image>

这是我的XAML.CS代码。

    private void TapGestureRecognizer_OnTapped(SecondPage secondPage)
    {
        Navigation.PushAsync(new SecondPage());

    }

1 个答案:

答案 0 :(得分:0)

如果您需要使用PushAsync,则父Page应该是NavigationPage。当我们使用NavigationPage并执行PushAsync时,导航堆栈将是维护,你会在Actionbar中得到一个后退按钮的后退按钮。

相反,如果我们使用PushModalAsync,页面将以模态方式显示。

PushAsync更改为PushModalAsync即可。

private void TapGestureRecognizer_OnTapped(SecondPage secondPage)
{
    Navigation. PushModalAsync(new SecondPage());

}