在UIScrollView中缩放多个子视图

时间:2010-10-18 16:46:15

标签: iphone uiscrollview zoom subview

如何同时缩放UIScrollView的多个子视图?我在另一个UIScrollView里面有一个UIScrollView(启用了分页),在内部scrollview里面我有四个UIImageViews。当我滚动到下一页时,我希望缩放保持不变,从而显示下一张图像。

相关代码如下:

- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView
{
    return self.page2;
}
+(void)updateScale:(CGFloat)newScale{
    currentScale = newScale;
}
+(CGFloat)getScale{
    return currentScale;
}

来自外部,启用分页,滚动视图和

- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView
{
    return imageView;
}
-(void)scrollViewDidEndZooming:(UIScrollView *)scrollView withView:(UIView *)view atScale:(float)scale{
    [PhotoViewController updateScale:scale];
    NSLog(@"New scale set to %01f", scale);
    NSLog(@"This should be equal to %01f", [PhotoViewController getScale]);
}

来自内部scrollview。

currentScale根据日志输出正确更新,但是当我为更新的[page setZoomScale:[PhotoViewController getScale]];变量调用page时,没有任何反应。 page已正确分配和初始化。

1 个答案:

答案 0 :(得分:6)

只需将所有图片视图放入空的UIView中,然后将该视图添加到滚动视图中。