XAML Xamarin为iOS / Android表单导航抽屉示例代码

时间:2017-03-09 13:47:04

标签: xaml user-interface navigation xamarin.forms

有谁知道如何实现类似于Sonos应用程序中的导航抽屉?我已经检查了Android和iOS版本的应用程序,并看到导航抽屉已经以相同的方式实现在两个平台上。

我喜欢和想要实现的两个关键事项是:

滑出式抽屉位于导航栏下方。当它滑出时,导航栏仍然可见 它似乎是抽出的抽屉,而不是向右移动的细节视图。我注意到默认的主详细信息页面以不同的方式滑出,这不是我们想要的。 看看下面的图片,看看我的意思。

感谢

Image 1

Image 2

1 个答案:

答案 0 :(得分:0)

虽然从技术上来说这不是一个好习惯,但如果你将MasterDetailPage放入NavigationPage,它会像上面的图片一样滑出来。这是你如何做到的:

App.cs构造函数或您应用的OnStart()方法中:

MainPage = new NavigationPage(new MyMasterDetailPage()) {
     Title = "Your Title"
};

创建一个名为MasterDetailPage的新MyMasterDetailPage。 在构造函数中,添加以下代码:

Detail = new HomePage();
Master = new MenuPage()
{
    Title = "Menu"
};

然后,您需要为ContentPageHomePage创建MenuPage

如果您使用此方法,您将遇到的一个问题是,如果您在打开应用时没有将MyMasterDetailPage作为第一页调用,则NavigationBar上的三个水平条赢了不会出现,这会让用户很难说出抽屉。因此,如果您需要用户在MasterDetailPage之前转到登录页面或其他页面,您可能希望找到其他实现。