Подтвердить что ты не робот

Половина изображения над другим изображением в форме xamarin

Я работаю с формами xamarin. Мне нужно создать макет с двумя объектами, расположенными так:

enter image description here

половина одного (круга) над другим объектом (квадрат)

Я искал, и мне кажется, что мне нужно использовать относительный макет... Я попытался сделать это, установив оба объекта в одной и той же сетке (строка и строка 0), а затем, используя constraintX, установить вторую в том же Y с коэффициентом 0 и отрицательная константа... Но это не сработало. A удалил строки и не может показать здесь, к сожалению... единственное, что произошло в этом: оба были в том же положении в y, но я мог бы сделать как изображение выше... Может кто-нибудь мне помочь с примером, идеей или чем-то еще? Большое спасибо!

Теперь мой код - образ родепы - это квадрат, а перезагрузка - это круг, который я теперь тот факт, что перезагрузка находится под квадратом, ошибочна, но на данный момент она притворяется визуальным... а это дает мне результат что я хочу... но не совсем

<!--Rodapé Grid-->
<RelativeLayout HorizontalOptions="FillAndExpand" 
                VerticalOptions="EndAndExpand" 
                BackgroundColor="Black">
    <Grid BackgroundColor="Red"
           RelativeLayout.WidthConstraint="{ConstraintExpression Type=RelativeToParent,
                                                                 Property=Width,
                                                                 Factor=1,
                                                                 Constant=0}">
        <Grid.RowDefinitions>
            <RowDefinition Height="*"/>
        </Grid.RowDefinitions>

        <Image Source="rodape.png" 
               Aspect="Fill"
               HorizontalOptions="FillAndExpand"
               Grid.Row="0"
               Grid.Column="0">
            <Image.GestureRecognizers>
                <TapGestureRecognizer Tapped="FranqueadoOnTapGestureRecognizerTapped"/>
            </Image.GestureRecognizers>
        </Image>
        <!--Escrito Rodapé-->
        <StackLayout Orientation="Vertical"
                     VerticalOptions="End"
                     HorizontalOptions="FillAndExpand"
                     Grid.Row="0"
                     Spacing="0"
                     Grid.Column="0">
            <Image Source="reloadicon.png"/>
            <StackLayout Orientation="Horizontal" 
                         HorizontalOptions="Center">
                <local:MyLabel NamedFontSize="Medium" 
                               FontSizeFactor="0.7" 
                               Text="Seja um Franqueado:"
                               TextColor="White"
                               FontAttributes="Bold"
                               Style="{StaticResource labelsfont}"/>
                <local:MyLabel NamedFontSize="Medium" 
                               FontSizeFactor="0.7" Text="montanaexpress.com"
                               Style="{StaticResource labelsfont}"
                               TextColor="{StaticResource laranjacolor}"/>              
            </StackLayout>
        </StackLayout>
    </Grid>
</RelativeLayout>
4b9b3361

Ответ 1

Попробуйте что-то вроде этого, я думаю, это проще:

<Grid>
    <BoxView Grid.Column="0" Grid.Row="1"
             Color="Red"
             HeightRequest="20"
             HorizontalOptions="FillAndExpand"/>
    <Frame Grid.Column="0" Grid.Row="0" Grid.RowSpan="2"
           BackgroundColor="Yellow"
           HorizontalOptions="CenterAndExpand"
           VerticalOptions="CenterAndExpand"
           WidthRequest="40"
           HeightRequest="40"
           CornerRadius="40"
           Margin="0,5,0,10"/>
</Grid>

Что вы получите: enter image description here

РЕДАКТИРОВАТЬ:

Как вам нужно при комментариях, используя ваши изображения, вы должны сделать что-то вроде этого:

<Grid>   
    <Image Grid.Row="1" Grid.Column="0"
           Source="rodape.png" 
           Aspect="Fill"
           HorizontalOptions="FillAndExpand">
        <Image.GestureRecognizers>
            <TapGestureRecognizer Tapped="FranqueadoOnTapGestureRecognizerTapped"/>
        </Image.GestureRecognizers>
    </Image>               
    <Image Grid.Column="0" Grid.Row="0" Grid.RowSpan="2"
           Source="reloadicon.png"
           HorizontalOptions="CenterAndExpand"
           VerticalOptions="Center"/>
</Grid>

Примечание. Я не могу понять, как метки и изображение должны отображаться в вашем макете. Вы должны добавить его вручную