Xamarin.forms 在flexlayout和frame xamarin表单中对齐标签
我有一个flexlayout,当在一个框架中显示一些项目时,但是所有在两行上有文本标签的项目图标被向上推,并且标签文本彼此不对齐。有没有关于我做错了什么的建议 我的代码Xamarin.forms 在flexlayout和frame xamarin表单中对齐标签,xamarin.forms,Xamarin.forms,我有一个flexlayout,当在一个框架中显示一些项目时,但是所有在两行上有文本标签的项目图标被向上推,并且标签文本彼此不对齐。有没有关于我做错了什么的建议 我的代码 <Grid> <ScrollView> <FlexLayout Padding="8" AlignContent="Start" AlignItems="Start" Binda
<Grid>
<ScrollView>
<FlexLayout
Padding="8"
AlignContent="Start"
AlignItems="Start"
BindableLayout.ItemsSource="{Binding MyItems}"
Direction="Row"
JustifyContent="Start"
Wrap="Wrap">
<BindableLayout.ItemTemplate>
<DataTemplate>
<StackLayout HorizontalOptions="FillAndExpand" VerticalOptions="FillAndExpand"
Margin="4,4,4,4"
FlexLayout.AlignSelf="Start"
FlexLayout.Basis="{OnIdiom Phone='50%',
Tablet='33%'}">
<Frame
Margin="0"
Padding="0"
BorderColor="DarkGray"
CornerRadius="10"
HeightRequest="130"
HasShadow="True">
<StackLayout VerticalOptions="Center" HorizontalOptions="Center">
<Image Aspect="AspectFit" Source="PhotoIcon.png"
Margin="0,20,0,0" WidthRequest="50" HeightRequest="50"/>
<Label Text="{Binding Name}" Margin="0,10,0,10" />
</StackLayout>
</Frame>
</StackLayout>
</DataTemplate>
</BindableLayout.ItemTemplate>
</FlexLayout>
</ScrollView>
</Grid>
改进您的代码
<Label Text="{Binding Name}" HorizontalTextAlignment="Center" VerticalTextAlignment="Center" Margin="0,10,0,10" />
Zhang抱歉,原来的代码已经有HorizontalTextAlignment=“Center”VerticalTextAlignment=“Center”,因为我为了发布而清理了它,所以我一定错过了它。还是不行我的项目做得很好。您可以共享一个包含问题的示例,这样我就可以在我这边测试它。我必须构建一个小项目并发布它。我已经创建了一个显示问题的虚拟项目。(安卓项目有2张图片)好的,我会检查一下。当你说标签文本没有对齐时,你希望它自己如何对齐?
<Grid VerticalOptions="FillAndExpand" HorizontalOptions="FillAndExpand">
<Grid.RowDefinitions>
<RowDefinition Height="0.5*" />
<RowDefinition Height="0.5*" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
</Grid.ColumnDefinitions>
<Image Grid.Row="0" Aspect="AspectFit" Source="PhotoIcon.png" Margin="0,20,0,0" WidthRequest="50" HeightRequest="50"/>
<Label Grid.Row="1" Text="{Binding Name}" Margin="0,10,0,10" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
</Grid>