【发布时间】:2017-01-16 12:56:00
【问题描述】:
我正在努力做某事,但我无法解决这个问题。我有三个页面,一个是 MainPage、LoginUpPage 和 SignUpPage,在 LoginUpPage 内部有一个导航到 SignUpPage 的按钮,我想要做的是当我完成我的逻辑导航到另一个页面 CreatedPage 时,其中包含一个带有消息的标签 -成功,然后在 2 秒后返回到 LoginPage,问题是如果我从设备按下后退按钮,它将返回到带有消息标签的最后一页,我不希望那样。我有一个带有 BackButton 的工具栏,可以返回到我导航的每个页面。到目前为止,我有这个:
登录页面到注册页面:
Navigation.PushAsync(new SignupPage());
SignUpPage 到 CreatedPage :
await Navigation.PushModalAsync(new Created());
在我的 Contructor 的 CreatedPage 内部,这个方法:
public async void Redirect()
{
await Task.Delay(TimeSpan.FromSeconds(2));
await Navigation.PushAsync(new LoginPage());
}
我知道question 基本上有三种方法可以导航到另一个页面:
Navigation.PushAsync(new OtherPage()); // to show OtherPage and be able to go back
Navigation.PushAsyncModal(new AnotherPage());// to show AnotherPage and not have a Back button
Navigation.PopAsync();// to go back one step on the navigation stack
在同一个问题中,有一个示例如何从堆栈中删除页面,但它不起作用。
item.Tapped += async (sender, e) => {
await Navigation.PushAsync (new SecondPage ());
Navigation.RemovePage(this);
};
【问题讨论】:
标签: c# xamarin.forms