【发布时间】:2017-03-14 18:55:03
【问题描述】:
我有一个如下所示的 Xamarin.Forms XAML 设置,但不知道为什么两个 StackLayout 实例之间有额外的空间。我尝试将填充设置为 0 并将边距设置为 0,但在最后一个 StackLayout 之间和末尾仍有空间。
<StackLayout Spacing="0" AbsoluteLayout.LayoutFlags="All" AbsoluteLayout.LayoutBounds="0,0,1,1" HeightRequest="500" Margin="0" Padding="0">
<StackLayout Orientation="Horizontal" HorizontalOptions="FillAndExpand" HeightRequest="20" Margin="0" Padding="0">
<Label Text="MyTest" HorizontalOptions="Center"></Label>
</StackLayout>
<StackLayout VerticalOptions="CenterAndExpand" Padding="10,0,10,0" HeightRequest="500" Margin="0">
<ListView x:Name ="listView" ItemsSource="{Binding MyBinding}">
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0.9*" />
<ColumnDefinition Width="0.1*" />
</Grid.ColumnDefinitions>
<Label Grid.Column="0" Text="{Binding MyName}" FontAttributes="Bold" VerticalTextAlignment="Center"/>
<Label Grid.Column="1" Text="{Binding MyValue}" FontAttributes="Bold" VerticalTextAlignment="Center"/>
</Grid>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</StackLayout>
</StackLayout>
【问题讨论】:
-
Remove 'Padding="10,0,10,0"' 它在你的堆栈布局和最后添加填充。我建议重新考虑你的布局,尝试优化它,目前你有 3 个堆栈布局,也许一个网格会更好地满足你的需求?
-
一张图片值一千字,它会显示您在哪里看到这些空间,让我们更容易提供解决方案。
标签: xamarin xamarin.forms