如何在 MasterDetailPage 菜单中设置背景图片

How to set Background image in MasterDetailPage menu

如何在没有 RelativeLayoutAbsoluteLayout 的情况下在 MasterDetailPage 菜单中设置背景图像。 我也尝试过使用 Grid 和 AbsoluteLayout,但它不起作用。这个问题有什么解决办法吗?

BackgroundImageSource="background.png" 也不起作用。

我的Xaml:

<MasterDetailPage.Master>
    <ContentPage Title="Menu" BackgroundColor="White"
                 Icon="hamburger.png">
        <StackLayout Orientation="Vertical" >
            <StackLayout x:Name="navigationDrawerList"
                         VerticalOptions="Fill">

                <BindableLayout.ItemTemplate>
                    <DataTemplate>
                        <StackLayout>
                            <StackLayout VerticalOptions="FillAndExpand"
                                         Orientation="Horizontal"
                                         Padding="20,0,0,0"
                                         Spacing="20">

                                <Label Text="{Binding Title}"
                                       FontSize="Medium"
                                       VerticalOptions="Center"
                                       TextColor="Gray" />

                            </StackLayout>
                        </StackLayout>
                    </DataTemplate>
                </BindableLayout.ItemTemplate>

            </StackLayout>   
            <StackLayout VerticalOptions="FillAndExpand"
                         Orientation="Horizontal"
                         Padding="50,2,0,2"
                         Spacing="20">

                <Label Text="About Us"
                       FontSize="Medium"
                       VerticalOptions="Center"
                       TextColor="Gray" />
            </StackLayout>
            <StackLayout VerticalOptions="FillAndExpand"
                         Orientation="Horizontal"
                         Padding="50,2,0,2"
                         Spacing="20">

                <Label Text="FAQ"
                       FontSize="Medium"
                       VerticalOptions="Center"
                       TextColor="Gray" />

            </StackLayout>
        </StackLayout> 
    </ContentPage>
</MasterDetailPage.Master>

如果您将 MasterDetailPage 内容包裹在嵌套的网格中,图像和内容将相互重叠,从而创建您正在寻找的背景效果

<MasterDetailPage.Master>
    <ContentPage Title="Menu" BackgroundColor="White"
                 Icon="hamburger.png">
        <Grid>
            <Grid VerticalOptions="FillAndExpand" HorizontalOptions="FillAndExpand">
                <Image Source="background.png" Aspect="AspectFill"></Image>
            </Grid>
            <Grid>
                //Your MasterDetailPage content
            </Grid>
        </Grid>
    </ContentPage>
</MasterDetailPage.Master>

试试看,您必须将背景颜色设置为透明才能设置背景图像。这个技巧对我有用,希望对你也有用

<MasterDetailPage.Master>
    <ContentPage Title="Menu"
          BackgroundColor="Transparent"
          BackgroundImage="hamburger.png">
        //Your xaml
    </ContentPage>
</MasterDetailPage.Master>