当我在按钮上使用
Scale=
使其变小时,间距会增加。
例如:
这显示同一行上的按钮按照我想要的方式间隔。
<ScrollView Orientation="Both">
<VerticalStackLayout Padding="7,7" Spacing="2">
<HorizontalStackLayout Margin="0" Spacing="2">
<Button Text="Show Scans" HorizontalOptions="Start" Scale="1.0" />
<Button Text="Sync Scans" HorizontalOptions="Start" Scale="1.0" />
<Button Text="Export Scans" HorizontalOptions="Start" Scale="1.0" />
</HorizontalStackLayout>
</VerticalStackLayout>
</ScrollView>
当我将按钮
Scale
设置得较小时,它可以工作,但间距会增加。
<ScrollView Orientation="Both">
<VerticalStackLayout Padding="7,7" Spacing="2">
<HorizontalStackLayout Margin="0" Spacing="2">
<Button Text="Show Scans" HorizontalOptions="Start" Scale="0.5" />
<Button Text="Sync Scans" HorizontalOptions="Start" Scale="0.5" />
<Button Text="Export Scans" HorizontalOptions="Start" Scale="0.5" />
</HorizontalStackLayout>
</VerticalStackLayout>
</ScrollView>
如何使用 Scale 来获得这个间距 < 1.0?
注意。所有这些按钮布局的右侧都有更多空间,因此这与较大按钮填满的行无关。
我阅读了有关按钮的所有内容并进行了搜索,但找不到特定于比例间距的答案< 1.0.
我同意杰森的评论。虽然您可以尝试将比例因子放入
HorizontalStackLayout
中,如下面的 XAML 所示,但问题是左对齐不会得到补偿。
正如您所观察到的,
Button
可能有一个默认样式,包括高度和宽度的最小值,因此您也必须明确这一点。
<ScrollView>
<VerticalStackLayout
Padding="0,0"
Spacing="25">
<Image
Source="dotnet_bot.png"
HeightRequest="185"
Aspect="AspectFit"
SemanticProperties.Description="dot net bot in a race car number eight" />
<VerticalStackLayout Padding="7,7" Spacing="2" >
<HorizontalStackLayout Margin="0" Spacing="2">
<Button Text="Show Scans" HorizontalOptions="Start" Scale="1.0" />
<Button Text="Sync Scans" HorizontalOptions="Start" Scale="1.0" />
<Button Text="Export Scans" HorizontalOptions="Start" Scale="1.0" />
</HorizontalStackLayout>
</VerticalStackLayout>
<VerticalStackLayout Padding="7,7" Spacing="2">
<HorizontalStackLayout Spacing="2" Scale="0.5" HorizontalOptions="Start">
<Button Text="Show Scans" HorizontalOptions="Start" />
<Button Text="Sync Scans" HorizontalOptions="Start" />
<Button Text="Export Scans" HorizontalOptions="Start" />
</HorizontalStackLayout>
</VerticalStackLayout>
<VerticalStackLayout Padding="7,7" Spacing="2">
<HorizontalStackLayout Margin="0" Spacing="2" HorizontalOptions="Start">
<Button Text="Show Scans" HorizontalOptions="Start" FontSize="7" Padding="7,5" MinimumHeightRequest="0" CornerRadius="4"/>
<Button Text="Sync Scans" HorizontalOptions="Start" FontSize="7" Padding="7,5" MinimumHeightRequest="0" CornerRadius="4"/>
<Button Text="Export Scans" HorizontalOptions="Start" FontSize="7" Padding="7,5" MinimumHeightRequest="0" CornerRadius="4"/>
</HorizontalStackLayout>
</VerticalStackLayout>
</VerticalStackLayout>
</ScrollView>