Xamarin 表单 Shell FlyoutItem

Xamarin Forms Shell FlyoutItem

我想让我的应用程序具有三个弹出菜单选项,如下所示:

配置

收集数据

大约

当用户选择“配置”弹出菜单选项时,我希望底部有两个选项卡组,上面写着

网络配置 ------ 数据配置

我只希望在选择“配置”弹出菜单选项时底部选项卡可见。有没有办法在 Xaml 中执行此操作,或者我是否需要在手动显示和隐藏底部选项卡的代码中执行此操作?

是的,您可以在 Xaml 中完成。您可以在每个 FlyoutItem.

中定义不同的 ShellContent

使用 Shell template 创建一个新项目,然后将这些代码添加到配置 shell:

 <Shell.FlyoutHeader>
        <Grid BackgroundColor="Black">
            <Label Text="Test"
               TextColor="White"
               FontAttributes="Bold"
               HorizontalTextAlignment="Center"
               VerticalTextAlignment="Center" />
        </Grid>
    </Shell.FlyoutHeader>

    <FlyoutItem Title="Configuration"
                >
        <ShellContent Title="Network Configuration">
            <views:NetworkConfiguration />
            </ShellContent>

        <ShellContent Title="Data Configuration">
            <views:DataConfiguration />
        </ShellContent>


    </FlyoutItem>

    <FlyoutItem Title="Collect Data"
                >
        <Tab>
            <ShellContent Title="Configuration"
                          ContentTemplate="{DataTemplate views:Page2}" />
            <ShellContent Title="Collect Data"
                          ContentTemplate="{DataTemplate views:Page3}" />
        </Tab>
    </FlyoutItem>


    <FlyoutItem Title="About">

        <ShellContent ContentTemplate="{DataTemplate views:AboutPage}" />

    </FlyoutItem>

你可以参考这个例子:shell-example-xamarin.forms