0

我试图放大具有多个图像的滚动视图,滚动视图仅垂直滚动,我尝试实现多种方式,在许多示例中但没有一种工作。这是我用来创建图像和滚动视图的代码:

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view from its nib.
    for (int i = 0; i < 6; i++)
    {
        UIImage *image = [UIImage imageNamed:[NSString stringWithFormat:@"amap1%i.png",i+1]];
        // create imageView
        _imageView = [[UIImageView alloc] initWithFrame:CGRectMake(0, _scrollView.frame.size.height*i, _scrollView.frame.size.width, _scrollView.frame.size.height)];
        // set scale to fill
        _imageView.contentMode = UIViewContentModeScaleToFill;
        // set image
        [_imageView setImage:image];
        // add to scrollView
        [self.scrollView addSubview:_imageView];
    }

    _scrollView.contentSize = CGSizeMake(_scrollView.frame.size.width, _scrollView.frame.size.height * 6);
    _scrollView.bounces = NO;
    _scrollView.pagingEnabled = YES;
}
4

2 回答 2

1

看起来您需要为每个图像(放大)使用 UIScrollView 做一个 UIScrollView (包含所有图像 - 水平滚动)。

有一个 WWDC 视频讨论了如何做到这一点(WWDC 2010 - Session 104;链接到 iTunes

于 2012-08-22T23:17:34.137 回答
0

如果要在 UIScrollView 中实现缩放,则必须执行以下操作

  1. 设置zoomEnabledYES
  2. 实现一个滚动视图委托

请查看Apple 文档,其中说:

要使缩放和平移工作,代理必须同时实现 viewForZoomingInScrollView: 和 scrollViewDidEndZooming:withView:atScale:; 另外,最大(maximumZoomScale)和最小(minimumZoomScale)缩放比例必须不同。

于 2012-08-22T14:13:09.640 回答