0

我有一个 UIScrollView 有大约 10 多个图像水平布局使用以下代码改编自苹果示例代码:

- (void)layoutScrollViewImages
{
    UIImageView *view = nil;
    NSArray *subviews = [scrollView subviews];
    CGFloat curXLoc = 0;
    for (view in subviews)
    {
        if ([view isKindOfClass:[UIImageView class]] && view.tag > 0)
        {
            CGRect frame = view.frame;
            frame.origin = CGPointMake(curXLoc, 0);

            view.frame = frame;
        curXLoc += (kScrollObjWidth);

        }
    }
    [scrollView setContentSize:CGSizeMake((kNumImages * kScrollObjWidth),[scrollView bounds].size.height)];
}

用户可以一次以水平方式翻阅图像,但我希望每个单独的图像都可以缩放。我尝试在 viewForZoomingInScrollView 中返回我的滚动视图,但这似乎会缩放整个滚动视图,而不是单个图像。此外,我尝试将 UIImageView 设置为属性并返回它,但仍然没有成功。此外,我尝试在情节提要中添加捏合手势识别器,但这根本不起作用。因此,寻找一些关于如何在 scrollView.subviews 数组中返回单个 UIImageView 的指导。

4

1 回答 1

0

听起来您想要类似于 Apples Photo Library 效果的东西,您可以在图像之间滑动,但可以缩放/滚动每个图像。

您将不得不将每个子视图放在它自己的缩放滚动视图中。然后每个人都可以独立于其他人滚动。

查看 Apple 的“photoscroller”示例代码(只需在文档中搜索 photoscroller)。代码中还有一个 WWDC 视频(WWDC 2010,“Designing Apps with Scroll Views”)

于 2012-12-23T18:22:58.860 回答