0

我对滚动视图中的图像有疑问。我想滚动图像,它们应该居中。有一个问题,因为每张图片的宽度都有其他值。

我尝试对滚动视图进行子类化,但我不知道如何在 layoutSubviews-Method 中获取实际图像。

状态更新:

现在我尝试使用 scrollViewDidScroll:。但是当我快速滚动时,它不会停在下一张图片上。

方法 In arrayWithXValues 代表图像在滚动视图中开始的值。

    - (void)scrollViewDidScroll:(UIScrollView *)scrollView
{

    CGSize iOSDeviceScreenSize = [[UIScreen mainScreen] bounds].size;
    float middleOfScreenX = scrollView.contentOffset.x + iOSDeviceScreenSize.width / 2;
    for (int i = 1; i < 19; i++) {
        if (i < 17) {
            if (middleOfScreenX > [[arrayWithXValues objectAtIndex:i] floatValue] && middleOfScreenX < [[arrayWithXValues objectAtIndex:i + 1] floatValue] && actualPage != i) {
                ...
                actualPage = i;
                [self killScroll];
            }

        } else {
            if (valMiddleX > [[arrayWithXValues objectAtIndex:i] floatValue]) {
                ...
                actualPage = i;
                [self killScroll];
            }
        }
    }
}

- (void)killScroll {
    self.horizontalScrollView.scrollEnabled = NO;
    self.horizontalScrollView.scrollEnabled = YES;
}

感谢你的帮助

4

0 回答 0