我有一个使用主详细信息页面和其中的导航页面的应用程序。在Android上,当您通过汉堡菜单导航到帐户页面时,导航栏会按预期保留在屏幕顶部,以便您可以使用它进行导航。在iOS上,导航栏消失,因此我创建了一个带有汉堡菜单图标的自定义栏。当有人点击自定义导航栏上的图标时,我希望汉堡菜单从左侧滑出。
我已将手势识别器附加到汉堡图标上,但我不知道在调用的方法中放入什么以使其执行滑动操作。
第二页上的导航栏:
<StackLayout IsVisible="{Binding _isiPhone}" Orientation="Horizontal" BackgroundColor="#008334">
<Image Source="burger.png" HorizontalOptions="StartAndExpand">
<Image.GestureRecognizers>
<TapGestureRecognizer Tapped="Burger_Clicked"></TapGestureRecognizer>
</Image.GestureRecognizers>
</Image>
</StackLayout>
事件处理程序:
private void Burger_Clicked(object sender, EventArgs e)
{
}
android视图:
android burger菜单视图:
iOS视图(使用自定义导航栏):
iOS汉堡菜单:
答案 0 :(得分:0)
您可以将MasterDetail页面上的“IsPresented”属性设置为True / False,以使侧面菜单显示/隐藏。 请重新考虑是否真的需要自定义栏,因为标准控件应该是用户习惯的东西。
另请注意,建议使用主页面的内容页面,您可以根据需要使用NavigationPage / TabPage / ContentPage进行详细页面。
有关详细信息,请参阅official docs