首页 > 解决方案 > 在轮播视图中调整每个图像的大小

问题描述

我正在使用可观察的集合并在轮播视图中显示我的图像。我需要按大小调整它们。例如,第一个最大的,然后图像应该变小。有没有办法做到这一点?

<IndicatorView x:Name="indicatorView" IndicatorSize="14"
                       MaximumVisible="6" IndicatorsShape="Circle"
                       Margin="0,20,0,30"
                       IndicatorColor="LightGray"
                       SelectedIndicatorColor="DarkGray"
                       HorizontalOptions="Center">
                        </IndicatorView>
                  <!--Pictures-->
                    <CarouselView Margin="0,0,0,20" HorizontalScrollBarVisibility="Never"  x:Name="image" 
                                 ItemsSource="{Binding ImageResults, Mode=TwoWay}" 
                                 BackgroundColor="{DynamicResource PictureBackground}"
                                 IndicatorView="indicatorView" >
                        <CarouselView.ItemTemplate >
                            <DataTemplate>
                                <Image Source="{Binding FieldVisualData}"  WidthRequest="530" HeightRequest="334"  />
                            </DataTemplate>
                        </CarouselView.ItemTemplate>
                    </CarouselView>

标签: xamarin.forms

解决方案


我发现Image使用WidthRequestand HeightRequest

有一种简单的方法可以使CarouselView中的图像大小保持一致,您可以AspectFit为每个Image设置显示相同的效果。

例如:

<Image Source="{Binding FieldVisualData}"  
       WidthRequest="530" 
       HeightRequest="334"  
       Aspect="AspectFit"/>

推荐阅读