Как установить фоновое изображение в меню MasterDetailPage - PullRequest
1 голос
/ 24 февраля 2020

Как установить фоновое изображение в меню MasterDetailPage без RelativeLayout и AbsoluteLayout . Я также пытался с 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>

Ответы [ 2 ]

1 голос
/ 24 февраля 2020

Если вы поместите содержимое MasterDetailPage во вложенную сетку, изображение и содержимое будут накладываться друг на друга, создавая эффект Backgound, который вы ищете

<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>
0 голосов
/ 24 февраля 2020

Попробуйте, вы должны установить цвет фона как прозрачный, чтобы установить фоновое изображение. Трюк сработал для меня, надеюсь, он сработает и для вас

<MasterDetailPage.Master>
    <ContentPage Title="Menu"
          BackgroundColor="Transparent"
          BackgroundImage="hamburger.png">
        //Your xaml
    </ContentPage>
</MasterDetailPage.Master>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...