如何使框架小于1?

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

我有一个应用程序,您应该通过将地图移动到坐标并按下一步来从 Google 地图获取坐标。为了显示地图指向的位置,中间有一个黑色矩形,我需要将其变成一个小点。

最初框架是一个黑色矩形,宽度和高度设置为 8。所以我将其设为红色,将 WidthRequest 和 HeightRequest 设置为 1,并给它一个半径,如下所示

<Frame 
    BackgroundColor="Red"
    Opacity="1"
    WidthRequest="0.01"
    HeightRequest="0.01"
    CornerRadius="20"   
    InputTransparent="True"
    HorizontalOptions="Center"
    VerticalOptions="Center" 
/>

这给出了这个圆圈:

enter image description here

这不完全是一个小圆圈。将宽度和高度请求设置为小于 1 会使它们的大小与 1 相同,即使它们是双倍的。

完整代码是这样的。我没有成功,如果有更好的方法可以做到这一点,我愿意接受建议

<?xml version="1.0" encoding="UTF-8"?>
<ContentPage
    xmlns="http://xamarin.com/schemas/2014/forms"
    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
    xmlns:d="http://xamarin.com/schemas/2014/forms/design"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:ctrl="clr-namespace:DriverReporting.CustomControls"
    xmlns:maps="clr-namespace:Xamarin.Forms.GoogleMaps;assembly=Xamarin.Forms.GoogleMaps"
    x:Class="DriverReporting.Views.ManualMapPage"
    Title="{Binding DisplayedValue}">
    <ContentPage.ToolbarItems>
        <ToolbarItem Text="Næste" Command="{Binding CommitCommand}" />
    </ContentPage.ToolbarItems>
    <Grid HorizontalOptions="Fill" VerticalOptions="Fill">
        <Grid.RowDefinitions>
            <RowDefinition Height="*"/>
            <RowDefinition Height="auto"/>
        </Grid.RowDefinitions>

        <ctrl:MapControl
            Grid.RowSpan="2" x:Name="MapControl"
            VerticalOptions="FillAndExpand"
            HorizontalOptions="FillAndExpand"
            CameraPosition="{Binding Value}"
            InitialPosition="{Binding InitialLocation}"
         />

        <Frame 
            BackgroundColor="Red"
            Opacity="1"
            WidthRequest="0.01"
            HeightRequest="0.01"
            CornerRadius="20"   
            InputTransparent="True"
            HorizontalOptions="Center"
            VerticalOptions="Center" 
        />
    </Grid>
</ContentPage>
xamarin xamarin.forms
1个回答
0
投票

原来我需要的只是一个 BoxView 而不是 Frame

<BoxView 
    WidthRequest="10"
    HeightRequest="10"
    Color="Red"
    CornerRadius="5"
    HorizontalOptions="Center"
    VerticalOptions="Center"
/>
© www.soinside.com 2019 - 2024. All rights reserved.