对于 Maui.NET,如何让 Shell.FlyoutContent 在 iOS 上工作

问题描述 投票:0回答:1

当我在 Android 上运行以下 Maui.NET xaml 代码并单击汉堡包按钮时,我会看到一个带有文本“hello”的绿色弹出菜单。

当我在 iOS 上尝试时,我得到一个空白的弹出按钮。

我该如何解决这个问题?

<Shell
    x:Class="MauiApp2.AppShell"
    xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
    xmlns:local="clr-namespace:MauiApp2"
    Shell.FlyoutBehavior="Flyout"
    Title="MauiApp2">

    <ShellContent
        Title="Home"
        ContentTemplate="{DataTemplate local:MainPage}"
        Route="MainPage" />
    
    <Shell.FlyoutContent>
        <Frame BackgroundColor="ForestGreen">
            <Label Text="hello"/>
        </Frame>
    </Shell.FlyoutContent>
</Shell>

enter image description here

ios shell maui flyout
1个回答
0
投票

对我有用的,我给你的标题示例是:

创建一个xaml,即StackLayout。

    <StackLayout xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="x.Views.Dashboard.FlyoutHeaderControl"
             Padding="10"
             BackgroundColor="#44185f">
    <Label>
        <Label.FormattedText>
            <FormattedString>
                <Span x:Name="lblUserFullName" FontSize="16" FontAttributes="Bold" TextColor="White"/>
            </FormattedString>
        </Label.FormattedText>
    </Label>
    <Label x:Name="lblEmail" FontSize="12" FontAttributes="Italic" TextColor="White"/>
</StackLayout>

我把它放在 App.xaml.cs 上,但你需要它的地方放这个:

 AppShell.Current.FlyoutHeader = new FlyoutHeaderControl();

制作 FlyoutContent 可能对您有用。

© www.soinside.com 2019 - 2024. All rights reserved.