Xamarin表单中按钮顶部的位置框架

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

我将创建一个自定义控件,其中框架位于按钮的顶部,全部位于网格内。当我这样做并单击该按钮时,该按钮最终在顶部,并且框架消失。单击按钮时如何将框架保持在顶部?

这里是简单的xaml:

<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="40"/>
    </Grid.RowDefinitions>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="50"/>
        <ColumnDefinition Width="30"/>
    </Grid.ColumnDefinitions>
    <Button 
        Grid.Row="0"
        Grid.Column="0"
        Grid.ColumnSpan="2"
        Text="Test"
        BackgroundColor="Green"
        TextColor="White"/>
    <Frame 
        Grid.Row="0"
        Grid.Column="1"
        CornerRadius="12"
        HasShadow="false"
        OutlineColor="Transparent"
        BackgroundColor="Red"
        Padding="0">
        <Label Text="3" TextColor="White" FontAttributes="Bold" Margin="10"/>
    </Frame>
</Grid>

enter image description here

我正在尝试创建带有徽章的按钮。徽章的位置不太理想,但是我只担心单击按钮时隐藏徽章的行为。

button xamarin.forms click position
1个回答
0
投票
单击按钮时边框不会消失
您的代码在iOS上运行良好,并且在Android中存在一个已知问题:Content rendered above a Material button is not visible when button is pressed

只需在MainActivity.OnCreate调用之前将以下内容添加到global::Xamarin.Forms.Forms.Init(this, savedInstanceState)

global::Xamarin.Forms.Forms.SetFlags("UseLegacyRenderers");

参考:Button in a AbsoluteLayout issue

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