我目前正在开发一个 iPad 应用程序,我需要一个“幻灯片”
因此,我创建了第一个 UIScrollView,它将用作分页器,在 viewDidLoad 中,我使用“for”循环将内容放入 UIScrollView。
这是循环:
for (int i = 0; i < self.thumbs.count; i++) {
UIScrollView *subScroll = [[UIScrollView alloc]initWithFrame:CGRectMake(self.ThumbsSlider.frame.size.width * i, 0, self.ThumbsSlider.frame.size.width, self.ThumbsSlider.frame.size.height)];
[subScroll setDelegate:self];
[subScroll setScrollEnabled:YES];
[subScroll setBouncesZoom:YES];
[subScroll setClipsToBounds:YES];
[subScroll setContentMode:UIViewContentModeCenter];
subviewImage = [[AsyncImageView alloc] initWithFrame:CGRectMake(0 , 0, subScroll.frame.size.width, subScroll.frame.size.height)];
subviewImage.contentMode = UIViewContentModeScaleAspectFit;
subviewImage.userInteractionEnabled = YES;
subviewImage.image = [UIImage imageNamed:@"no-image.jpg"];
subviewImage.imageURL = [NSURL URLWithString:[self.thumbs objectAtIndex:i]];
[subScroll addSubview:subviewImage];
subScroll.minimumZoomScale = 1.0;
subScroll.maximumZoomScale = 3.0;
[[subScroll delegate]viewForZoomingInScrollView:subScroll];
[self.ThumbsSlider addSubview:subScroll];
}
当我在 iPad 上启动应用程序时,没有崩溃。 但是,当我尝试缩放时,我的 subScroll 的 contentSize 发生了变化,但 subviewImage 没有缩放!
有人能解释一下为什么吗?
提前致谢!
最佳答案
将此功能放入您的 Controller
- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView
{
for (UIView *imageView in scrollView.subviews)
{
if ([imageView isKindOfClass:[AsyncImageView Class]])
{
return imageView;
}
}
return nil;
}
并从循环中删除以下行:
[[subScroll delegate]viewForZoomingInScrollView:subScroll];
关于ios - UIScrollView 缩放但 subview 保持不变,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21575846/