Xamarin.Forms 滑块菜单

Xamarin.Forms Slider menu

我正在开发一款必须在 Android 和 WinPhone 上运行的应用程序。 屏幕设计需要一个滑块菜单。 我已经根据我发现的一些例子实现了它。

var listMenu = new ObservableCollection<MenuItemAbstract>() {new MyMenu()};
return  new NavigationPage(new RootPage("MainPage", Strings.Version, listMenu, new MainPage(), false)) {BarBackgroudColor = Colours.ActionBarBackground, BarTextColor = Colours.ActionBarText};

我的问题是,在 Android 上它工作正常(它是一个滑块菜单),但在 Windows Phone 上它看起来像屏幕底部的标签。

有没有办法让我的菜单看起来像 Android 上的相同滑块?

我假设您提到的屏幕底部的选项卡是 Windows Phone 标准菜单。发生这种情况的原因是因为 Xamarin 尝试使用本机组件 - 在 Windows Phone 上,这些菜单是标准的,并且它们遵循设计指南。通常这应该没问题。让用户熟悉您的应用程序 - WindowsPhone 应用程序上的 iOS 界面通常不是一个好主意,除非您有非常非常好的 UI(Spotify 是很好的例子)。

据我所知,目前 WindowsPhone 中没有支持滑入式菜单的方法,因此您必须自己进行自定义。在 Xamarin.Forms 中,您必须使用 DependencyManager 来执行此操作。解释和例子可以在这里找到:http://developer.xamarin.com/guides/cross-platform/xamarin-forms/dependency-service/ and here http://developer.xamarin.com/guides/cross-platform/xamarin-forms/working-with/files/(这个是为了处理文件而创造的,但是只需用你的菜单部分替换文件部分,设置它的方式是相同的)

如果它是一个 "normal" Xamarin 项目,那么它就是您编写的 WinPhone8 SDK 无论如何 - 您可能需要对如何实现幻灯片进行一些单独的研究 -在 Windows Phone 的菜单中。

也许这是一个好的开始? http://depblog.weblogs.us/2013/07/30/facebook-like-settings-pane-with-gestures-windows-phone/