【问题标题】:Go to page and clear the stack [Xamarin Forms]转到页面并清除堆栈 [Xamarin Forms]
【发布时间】:2018-06-14 20:50:04
【问题描述】:

我有这样的导航堆栈:

第1页->第2页->第3页->第4页->第5页->第6页

我想从 Page6 导航到 Page2 并清除其余页面(Page3、Page4、Page5)

我该怎么做?

提前致谢!

【问题讨论】:

  • 你有什么类型的导航,你尝试过什么?
  • 我有 NavigationService,我使用 PushAsync 和 PopAsync
  • 所以你有一个分层导航。您尝试过什么来实现所需的行为?
  • 我已经尝试从堆栈中删除一页又一页,直到我得到 Page2,但也许有更好的解决方案?
  • 很遗憾没有。不是您可以使用的内置方法。您必须自己清理导航堆栈。

标签: android forms xamarin xamarin.forms


【解决方案1】:

当您想向后导航页面计数时,您需要从导航堆栈中删除 count 个页面:

for (var i = 1; i < countPagesToRemove; i++)
{
    Navigation.RemovePage(Navigation.NavigationStack[Navigation.NavigationStack.Count - 2]);
}
await Navigation.PopAsync();

【讨论】:

    猜你喜欢
    • 2017-12-18
    • 2017-01-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-21
    • 1970-01-01
    • 1970-01-01
    • 2013-10-11
    相关资源
    最近更新 更多