Xamarin.Forms Prism 主视图在弹出框可见时不显示汉堡包图标
Xamarin.Forms Prism master view not showing hamburger icon when popover visible
我已经将 Xamarin.Forms Prism 应用程序设置为使用 Master-Detail 页面(MasterBehavior 设置为 Popover)进行导航,但我注意到我的 Prism 应用程序与使用此页面 (https://developer.xamarin.com/guides/xamarin-forms/user-interface/navigation/master-detail-page/) 的示例 Xamarin.Forms 应用程序。
在 Android 上,单击汉堡包图标会使母版在两个应用程序中滑出。在示例应用程序中,汉堡包图标仍然可见。在我的 Prism 应用程序中,汉堡包图标不可见,因为主视图占据了屏幕的整个高度,如下所示:
在 UWP 上,单击汉堡包图标会使母版在两个应用程序中滑出。在示例应用程序中,汉堡包图标仍然可见,母版页的标题显示在顶部。在我的 Prism 应用程序中,这些项目都不可见,如下所示:
Prism 应用主视图的顶部和底部似乎也有某种填充或空白 space。
这些差异是由 Prism 本身引入的,还是有一种方法可以配置 master 以使其行为类似于 vanilla Xamarin.Forms 示例?
更新的屏幕截图
为了更好地展示我所看到的问题,这里有一些屏幕截图。
Xamarin 示例、应用程序启动然后点击汉堡包图标保持导航栏(带有汉堡包图标)可见且主视图可见:
我的 Prism 应用程序,启动应用程序然后点击汉堡包图标会使主视图占据整个屏幕高度:
为了在您导航到页面时显示汉堡包图标,您必须将详细信息包装在 NavigationPage 中。所以注册导航的navigationPage,然后把它添加到你的导航URI中。
protected override void OnInitialized()
{
NavigationService.NavigateAsync("MyMasterDetail/NavigationPage/MainPage");
}
看看这个沙箱示例:
https://github.com/PrismLibrary/Prism/tree/master/Sandbox/Xamarin
我已经将 Xamarin.Forms Prism 应用程序设置为使用 Master-Detail 页面(MasterBehavior 设置为 Popover)进行导航,但我注意到我的 Prism 应用程序与使用此页面 (https://developer.xamarin.com/guides/xamarin-forms/user-interface/navigation/master-detail-page/) 的示例 Xamarin.Forms 应用程序。
在 Android 上,单击汉堡包图标会使母版在两个应用程序中滑出。在示例应用程序中,汉堡包图标仍然可见。在我的 Prism 应用程序中,汉堡包图标不可见,因为主视图占据了屏幕的整个高度,如下所示:
在 UWP 上,单击汉堡包图标会使母版在两个应用程序中滑出。在示例应用程序中,汉堡包图标仍然可见,母版页的标题显示在顶部。在我的 Prism 应用程序中,这些项目都不可见,如下所示:
Prism 应用主视图的顶部和底部似乎也有某种填充或空白 space。
这些差异是由 Prism 本身引入的,还是有一种方法可以配置 master 以使其行为类似于 vanilla Xamarin.Forms 示例?
更新的屏幕截图
为了更好地展示我所看到的问题,这里有一些屏幕截图。
Xamarin 示例、应用程序启动然后点击汉堡包图标保持导航栏(带有汉堡包图标)可见且主视图可见:
我的 Prism 应用程序,启动应用程序然后点击汉堡包图标会使主视图占据整个屏幕高度:
为了在您导航到页面时显示汉堡包图标,您必须将详细信息包装在 NavigationPage 中。所以注册导航的navigationPage,然后把它添加到你的导航URI中。
protected override void OnInitialized()
{
NavigationService.NavigateAsync("MyMasterDetail/NavigationPage/MainPage");
}
看看这个沙箱示例:
https://github.com/PrismLibrary/Prism/tree/master/Sandbox/Xamarin