【问题标题】:Cross platform NavigationDrawer/SideMenu?跨平台导航抽屉/侧边菜单?
【发布时间】:2019-01-18 19:19:41
【问题描述】:
架构问题:实现跨平台导航抽屉/侧菜单是否需要遵循组件或约定?我发现平台特定的实现不够相似,无法以跨平台的方式一致地实现。 MvvmCross iOSSupport 库的 Xamarin.Sidebar 似乎是特定于 iOS 的,Android 上的 DrawerLayout 也是如此,但它们的实现似乎太不同了。是否存在一刀切的解决方案,还是我必须自己推出?
【问题讨论】:
标签:
xamarin
navigation-drawer
side-menu
【解决方案1】:
如果您在谈论 Xamarin.Forms,这正是 MasterDetailPage 的工作原理。如果您要求 Xamarin.Android 和 Xamarin.iOS 问题在逻辑上不一致 - 即使您可以通过某个统一包显示一个空面板,也无法向其中添加控件,因为它必须完全单独完成(因为没有通用控件)并且无法为此制作通用包。
【解决方案2】:
你描述的是MasterDetail
Xamarin.Forms MasterDetailPage 是一个管理两个相关的页面
信息页面 – 显示项目的母版页和详细信息
显示母版页上项目详细信息的页面。