我有一个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中返回我的scrollView,但这似乎缩放了整个scrollview,而不是单个图像。另外,我已经尝试将UIImageView设置为属性并返回该属性,但仍然没有取得任何成功。此外,我已经尝试在故事板中添加捏手势识别器,但这并不是全部工作。所以寻找一些关于如何在scrollView.subviews数组中返回单个UIImageView的指导。
答案 0 :(得分:0)
听起来你想要类似于苹果照片库效果的东西,你可以从图像到图像滑动,但每张图像都可以缩放/滚动。
您必须将每个子视图放在其自己的缩放滚动视图中。然后每个人都可以独立于其他人滚动。
看一下Apple的'photoscroller'示例代码(只需在文档中搜索photoscroller)。还有一个WWDC视频伴随代码(WWDC 2010,“使用滚动视图设计应用程序”)