Xamarin.ios UIScrollView停止得太快了

Xamarin.ios UIScrollView停止得太快了,xamarin.ios,uiscrollview,Xamarin.ios,Uiscrollview,我正在使用scrollview为我的应用程序创建一个图像库,我的应用程序基本上正常工作。它允许我一个接一个地滚动图片,但最后一张图片总是被截掉,我不知道为什么 这是操作的主要部分: var idx=0; foreach(var mediateItem in _mediateItems) { var xPosition=UIScreen.MainScreen.Bounds.Width*idx; var imageView=new UIImageView(); SetImage(新的NSUrl(me

我正在使用scrollview为我的应用程序创建一个图像库,我的应用程序基本上正常工作。它允许我一个接一个地滚动图片,但最后一张图片总是被截掉,我不知道为什么

这是操作的主要部分:

var idx=0;
foreach(var mediateItem in _mediateItems)
{
var xPosition=UIScreen.MainScreen.Bounds.Width*idx;
var imageView=new UIImageView();
SetImage(新的NSUrl(mediateItem),UIImage.FromBundle(“image_占位符”);
imageView.Frame=新的CGRect(xPosition,0,svGallery.Frame.Width+50,svGallery.Frame.Height);
imageView.ContentMode=UIViewContentMode.ScaleSpectFit;
svGallery.ContentSize=新的CGSize
{
宽度=svGallery.Frame.Width*(idx+1)
};
svGallery.AddSubview(imageView);
idx++;
}

减去这个缺陷,它工作得非常完美,正如我所期望的那样。

从共享代码中,ContenSize的
宽度是:

Width = svGallery.Frame.Width * (idx + 1)
但是,
ImageView
的每个
Width
svGallery.Frame.Width+50
)都大于
vGallery.Frame.Width

imageView.Frame = new CGRect(xPosition, 0, svGallery.Frame.Width + 50, svGallery.Frame.Height);
因此,
ContenSize
的实际
Width
不能包含所有
ImageView
的内容。如果ImageView的数量较大,则最后一张图片将被更多地截取

您可以按如下方式修改
ContentSize
Width
,以检查其是否工作:

svGallery.ContentSize = new CGSize
{
    Width = (svGallery.Frame.Width + 50) * (idx + 1)
};