我已经创建了这个滚动视图来动态加载图像。然而,我无法让图像覆盖屏幕(应该适应iPhone/iPad)。并且图像的高度也是损坏的(见附件图像)。
我做错了什么?
图像

源加载图像:
for (int i=0; i < numberOfImages; i++) {
// create image
NSString *imageName = [NSString stringWithFormat: imageArray[i], i+1];
UIImage *image = [UIImage imageNamed:imageName];
UIImageView *imageView = [[UIImageView alloc] initWithImage:image];
// put image on correct position
CGRect rect = imageView.frame;
rect.origin.x = currentX + self.scrollView.frame.size.width/2;
imageView.frame = rect;
// update currentX
currentX += imageView.frame.size.width + self.scrollView.frame.size.width;
[self.scrollView addSubview:imageView];
[imageView release];
}
self.scrollView.contentSize = CGSizeMake(currentX, self.view.frame.size.height);
self.scrollView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin;
[self.view addSubview:scrollView];
[self.scrollView release];发布于 2015-04-27 08:09:17
这应该适用于你:
for (int i = 0; i < numberOfImages; i++) {
// create image
NSString *imageName = [NSString stringWithFormat: imageArray[i], i+1];
UIImage *image = [UIImage imageNamed:imageName];
UIImageView *imageView = [[UIImageView alloc] initWithImage:image];
imageView.contentMode = UIViewContentModeCenter;
// put image on correct position
CGRect rect = self.scrollView.bounds;
rect.origin.x = currentX;
imageView.frame = rect;
// update currentX
currentX += self.scrollView.frame.size.width;
[self.scrollView addSubview:imageView];
[imageView release];
}
self.scrollView.contentSize = CGSizeMake(currentX, self.scrollView.frame.size.height);您还可以将scrollView分页属性设置为yes,因此它将逐页滚动。
发布于 2015-04-27 10:45:22
您应该使用带有水平滚动的UICollectionView,而不是scrollView,并且可以实现集合视图中的委托,为单元格提供所需的维度。实现将非常简单和直接。
https://stackoverflow.com/questions/29781044
复制相似问题