滚动视图上子视图的不必要的反弹

我有一个滚动视图作为一个横幅与15个图像视图作为子视图(横向滚动)。 我这样添加子视图:

for (int i = 0; i < featuredImages.count; i++) {

    CGRect frame;
    frame.origin.x = self.scrollViewFeaturedImages.frame.size.width * i;
    frame.origin.y = 0;
    frame.size = self.scrollViewFeaturedImages.frame.size;

    UIImageView *subview = [[UIImageView alloc] init];
    subview.frame = frame;
    [self.scrollViewFeaturedImages addSubview:subview];
}

并相应地设置contentSize:

self.scrollViewFeaturedImages.contentSize = CGSizeMake(self.scrollViewFeaturedImages.frame.size.width * featuredImages.count, self.scrollViewFeaturedImages.frame.size.height);

self.scrollViewFeaturedImages.contentInset = UIEdgeInsetsZero;

但是,当视图出现时,第一个图像似乎有点偏离。

图像帧和滚动帧之间的空间

当我滚动(水平)到下一张图像时,间隙消失,当我滚动回第一张图像时,帧已经被校正。

我也禁用了BOUNCE,但我可以垂直拖动图像。

在这里输入图像描述

我也试过这个:

self.automaticallyAdjustsScrollViewInsets = NO;

没有成功。

这是怎么回事?


在困惑了2周后,我终于通过在viewDidAppear添加这些行来修复这个问题。

self.scrollViewFeaturedImages.contentInset = UIEdgeInsetsZero;
self.scrollViewFeaturedImages.scrollIndicatorInsets = UIEdgeInsetsZero;

您是否尝试将UIImageView的属性contentMode更改为UIViewContentModeScaleToFill

链接地址: http://www.djcxy.com/p/74387.html

上一篇: Unwanted bounce of subviews on scrollview

下一篇: Xcode 6: Keyboard does not show up in simulator