有没有办法让列表视图的列表项居中?我希望页眉只占页面列表项的整个宽度,例如800像素或屏幕的60%。等等。似乎列表希望列表项的宽度与列表及其标题相同。我试着水平居中项目,但它不工作,我不想使用边距,因为它杀死性能。任何建议?
<Grid>
<ListView HorizontalOptions="FillAndExpand">
<ListView.Header>
<StackLayout HorizontalOptions="Fill"
BackgroundColor="Yellow"
HeightRequest="300">
<Label Text="Header"
FontSize="72"
HorizontalOptions="Center"
VerticalOptions="Center"
TextColor="Black"/>
</StackLayout>
</ListView.Header>
<ListView.ItemsSource>
<x:Array Type="{x:Type x:String}">
<x:String>One</x:String>
<x:String>One</x:String>
<x:String>One</x:String>
<x:String>One</x:String>
<x:String>One</x:String>
<x:String>One</x:String>
<x:String>One</x:String>
<x:String>One</x:String>
<x:String>One</x:String>
<x:String>One</x:String>
<x:String>One</x:String>
<x:String>One</x:String>
<x:String>One</x:String>
<x:String>One</x:String>
<x:String>One</x:String>
<x:String>One</x:String>
<x:String>One</x:String>
<x:String>One</x:String>
<x:String>One</x:String>
</x:Array>
</ListView.ItemsSource>
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<StackLayout HorizontalOptions="Center"
WidthRequest="800"
BackgroundColor="Green">
<Label Text="{Binding . }"
HeightRequest="20"
BackgroundColor="DimGray"
HorizontalOptions="Center"
TextColor="Black"/>
</StackLayout>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</Grid>
1条答案
按热度按时间utugiqy61#
你不能使列表视图的项目真正居中,但你可以使它看起来像居中。
您可以尝试让stacklayout填充视图单元格,并设置标签的背景和宽度,使其看起来像中心。例如:
结果是: