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:
上测试过
- 运行 来自示例代码的应用程序(未修改),它显示 MainPage
- 点击菜单中的 ViewA,导航到 ViewA,但应用栏中没有后退按钮。
点击设备后退按钮有效,它导航回 MainPage。
我期望的行为是在栏中也看到后退按钮。
更新
我正在调试 Prism,我可以清楚地看到 Prism 的 PageNavigationService
通过调用 currentPage.Navigation.PushAsync(page, animated)
导航到 ViewA
。
我可以看到 Xamarin Forms 的 NavigationImpl
有两个页面 NavigationStack
,MainPage
和 ViewA
。所以 MainPage
仍然存在于导航堆栈中,但由于某种原因后退按钮不可见。
回答!
@lowleetak 发现示例中某处有一个隐藏后退按钮的调用!
应用程序在 MasterDetail 页面启动。 MasterPage 最初是 Menu,DetailPage 是 MyNavigationPage/MainPage。
当您从菜单中单击 ViewA 时,它会将 DetailPage 从 MainPage 更改为 MyNavigationPage/ViewA。它是 DetailPage 的导航堆栈中的 root/initial 页面。所以,没有显示后退按钮。
我从 https://github.com/PrismLibrary/Prism/tree/master/Sandbox/Xamarin/HelloWorld
我在 Android 6:
上测试过- 运行 来自示例代码的应用程序(未修改),它显示 MainPage
- 点击菜单中的 ViewA,导航到 ViewA,但应用栏中没有后退按钮。
点击设备后退按钮有效,它导航回 MainPage。
我期望的行为是在栏中也看到后退按钮。
更新
我正在调试 Prism,我可以清楚地看到 Prism 的 PageNavigationService
通过调用 currentPage.Navigation.PushAsync(page, animated)
导航到 ViewA
。
我可以看到 Xamarin Forms 的 NavigationImpl
有两个页面 NavigationStack
,MainPage
和 ViewA
。所以 MainPage
仍然存在于导航堆栈中,但由于某种原因后退按钮不可见。
回答! @lowleetak 发现示例中某处有一个隐藏后退按钮的调用!
应用程序在 MasterDetail 页面启动。 MasterPage 最初是 Menu,DetailPage 是 MyNavigationPage/MainPage。
当您从菜单中单击 ViewA 时,它会将 DetailPage 从 MainPage 更改为 MyNavigationPage/ViewA。它是 DetailPage 的导航堆栈中的 root/initial 页面。所以,没有显示后退按钮。