0

我对 Xamarin 比较陌生,并决定为我的第一个移动应用项目尝试 Xamarin.Forms。但是,我在尝试同时显示 Flyout 和 TabBar 时遇到了麻烦。所以我在这里问,如果,这可能吗?

我想要实现的是:

  • 我有两个 TabBar 页面,“Trainer”和“Reference”
  • 我希望“培训师”页面(并且只有这个页面)在活动时有一个弹出菜单(左上角的汉堡按钮)。这是因为此页面中有子页面,例如“Assembly”、“Ethernet”等...
  • 然后,从 Flyout 中选择的条目将被加载到 Trainer TabBar 页面(如果可能的话?)

谢谢你。

来自 AppShell.xaml 的代码片段:

<TabBar>
    <ShellContent Title="Trainer" Icon="icon_workstation.png" ContentTemplate="{DataTemplate local:TrainerPage}" />
    <ShellContent Title="Reference" Icon="icon_resource.png" ContentTemplate="{DataTemplate local:ReferencePage}" />
</TabBar>

<FlyoutItem Title="PC Assembly" Icon="icon_wrench.png">
    <ShellContent ContentTemplate="{DataTemplate local:AssemblyPage}" />
</FlyoutItem>
<FlyoutItem Title="Ethernet Wiring" Icon="icon_ethernet.png">
    <ShellContent ContentTemplate="{DataTemplate local:EthernetWiringPage}" />
</FlyoutItem>
<FlyoutItem Title="OS Installer Maker" Icon="icon_usb.png">
    <ShellContent ContentTemplate="{DataTemplate local:InstallerMakerPage}" />
</FlyoutItem>
<FlyoutItem Title="Windows Installation" Icon="icon_os.png">
    <ShellContent ContentTemplate="{DataTemplate local:WindowsInstallPage}" />
</FlyoutItem>
<FlyoutItem Title="Windows (DHCP) Configuration" Icon="icon_settings.png">
    <ShellContent ContentTemplate="{DataTemplate local:WindowsConfigurationPage}" />
</FlyoutItem>

培训师(TabBar)页面: 在此处输入图像描述

参考(TabBar)页面: 在此处输入图像描述

4

1 回答 1

0

有人设法在另一个平台上回答了我同样的问题,我认为最好在这里分享。

通过使用下面的代码片段,我能够实现我想要做的事情:

<FlyoutItem Title="About" Icon="icon_about.png">
    <Tab Title="item_1">
        <ShellContent Route="AboutPage" ContentTemplate="{DataTemplate local:page_1}" />
    </Tab>
    <Tab Title="item_2">
        <ShellContent Route="AboutPage" ContentTemplate="{DataTemplate local:page_2}" />
    </Tab>
</FlyoutItem>
<FlyoutItem Title="Browse" Icon="icon_feed.png">
    <ShellContent Title="page_1" Route="ItemsPage" ContentTemplate="{DataTemplate local:ItemsPage}" />
</FlyoutItem>

我取得的成就的演示:

在此处输入图像描述

于 2021-04-14T12:32:59.487 回答