[英]How can I center the the flyout items of a Xamarin Shell application?
[英]How to show different items in Flyout item and different items in bottom tab bar using Xamarin forms shell?
我正在研究汉堡菜单和底部标签栏项目。 下面是我的 AppShell.xaml 文件。
<!-- LoginPage -->
<ShellContent Route="login"
ContentTemplate="{DataTemplate local:LoginPage}">
</ShellContent>
<FlyoutItem Route="about" FlyoutDisplayOptions="AsMultipleItems">
<ShellContent Title="About" Icon="icon_about.png" Route="AboutPage" ContentTemplate="{DataTemplate local:AboutPage}" />
<ShellContent Title="Browse" Icon="icon_feed.png" ContentTemplate="{DataTemplate local:ItemsPage}" />
</FlyoutItem>
目前,相同的项目同时显示在弹出菜单和底部选项卡中。 但是根据我在 Flyout 菜单中的要求,我必须显示 AboutPage 和 Browse 页面,并且在底部选项卡中我必须显示 Market Tab 和 Address 选项卡。 但它仅在底部选项卡中显示“关于”选项卡和“浏览”选项卡。 谁能告诉如何在底部标签中显示不同的项目?
提前致谢。
您可以使用MenuItem
来显示 Flyout 中的项目。 并使用FlyoutItem
在底部标签栏中显示标签,而无需将FlyoutDisplayOptions
属性设置为AsMultipleItems
。
Xaml:
<MenuItem
Command="{Binding AboutCommand}"
Icon="tab_about.png"
Text="About" />
<FlyoutItem>
<ShellContent Title="Market" ContentTemplate="{DataTemplate local:Market}" />
<ShellContent Title="Address" ContentTemplate="{DataTemplate local:Address}" />
</FlyoutItem>
后面的代码:
public ICommand AboutCommand => new Command(async () => await NavigatedToAbout());
async Task NavigatedToAbout()
{
await Shell.Current.GoToAsync("about");
}
public AppShell()
{
InitializeComponent();
Routing.RegisterRoute("about", typeof(AboutPage));
BindingContext = this;
}
截屏:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.