Xamarin.forms Xamarin表单转盘视图-Android和iOS的差异

Xamarin.forms Xamarin表单转盘视图-Android和iOS的差异,xamarin.forms,Xamarin.forms,我无法让两个平台表现出相同的行为 我想同时在屏幕上显示多个项目 iOS似乎允许PeekAreaInsert像边距一样工作,因为您可以指定顶部、右侧、底部和左侧 安卓似乎只承认一个价值 这意味着只要设置了PEKECARIAN Sert值,Android视图就呈现出页面中间的第一个项目,而IOS视图可以利用这个值,但仍然与页面的左边对齐。 使用PeekAreaInserts值时,有没有办法让Android与视图的开始或左侧对齐,从而实现一致的外观 以下示例在iOS上左对齐旋转木马视图,但Androi

我无法让两个平台表现出相同的行为

我想同时在屏幕上显示多个项目

iOS似乎允许PeekAreaInsert像边距一样工作,因为您可以指定顶部、右侧、底部和左侧

安卓似乎只承认一个价值

这意味着只要设置了PEKECARIAN Sert值,Android视图就呈现出页面中间的第一个项目,而IOS视图可以利用这个值,但仍然与页面

的左边对齐。 使用PeekAreaInserts值时,有没有办法让Android与视图的开始或左侧对齐,从而实现一致的外观

以下示例在iOS上左对齐旋转木马视图,但Android上的相同代码始终将第一项居中

                <CarouselView.Margin>
                    <OnPlatform x:TypeArguments="Thickness">
                        <On Platform="iOS" Value="5, 0, 0, 0" />
                        <On Platform="Android" Value="0, 0, 0, 0" />
                    </OnPlatform>
                </CarouselView.Margin>
                <CarouselView.PeekAreaInsets>
                    <OnPlatform x:TypeArguments="Thickness">
                        <On Platform="iOS" Value="0, 0, 200, 0" />
                        <On Platform="Android" Value="200,0,0,0" />
                    </OnPlatform>
                </CarouselView.PeekAreaInsets>

原因:在Android和iOS上使用PeekAreaInsets时,我们有不同的行为

在iOS中,我们总是将每个元素放在中间。因此,在某些情况下,我们在第一个元素的左侧或最后一个元素的右侧留有空间

在Android中,PeekAreaInsets并没有在开头或结尾添加空间


解决方法:如果您确实希望在iOS和Android上实现相同的效果,最好使用CollectionView和Snap选项将其设置为Start。

在Android和iOS上使用PeekAreaInsets时,我们有不同的行为。在iOS中,我们总是将每个元素放在中间。因此,在某些情况下,我们在第一个元素的左侧或最后一个元素的右侧留有空间。在Android上,PeekAreaInsets并没有在开头或结尾添加空间。如果你真的想在iOS和Android上实现同样的效果,你最好使用带有快照选项的CollectionView。好的,可以了,谢谢。我会把它作为答案发布。你能接受吗?这将帮助更多的人: