HelloWorld 示例代码不适用于 Android:后退按钮不可见

HelloWorld sample code not working on Android: Back button not visible

我从 https://github.com/PrismLibrary/Prism/tree/master/Sandbox/Xamarin/HelloWorld

我在 Android 6:

上测试过
  1. 运行 来自示例代码的应用程序(未修改),它显示 MainPage
  2. 点击菜单中的 ViewA,导航到 ViewA,但应用栏中没有后退按钮。

点击设备后退按钮有效,它导航回 MainPage。

我期望的行为是在栏中也看到后退按钮。

更新

我正在调试 Prism,我可以清楚地看到 Prism 的 PageNavigationService 通过调用 currentPage.Navigation.PushAsync(page, animated) 导航到 ViewA。 我可以看到 Xamarin Forms 的 NavigationImpl 有两个页面 NavigationStackMainPageViewA。所以 MainPage 仍然存在于导航堆栈中,但由于某种原因后退按钮不可见。

回答! @lowleetak 发现示例中某处有一个隐藏后退按钮的调用!

应用程序在 MasterDetail 页面启动。 MasterPage 最初是 Menu,DetailPage 是 MyNavigationPage/MainPage。

当您从菜单中单击 ViewA 时,它会将 DetailPage 从 MainPage 更改为 MyNavigationPage/ViewA。它是 DetailPage 的导航堆栈中的 root/initial 页面。所以,没有显示后退按钮。