iOS:在Array中存储到UIImageViews的链接,然后使用它们

时间:2014-03-23 23:25:50

标签: ios uiscrollview uiimageview zoom

我想创建一个“可页面化”的UIScrollView,它包含几种对象,包括可缩放的图像。所以我设置了主UIScrollView并在这些页面上添加了附加UIScrollViews的图像,这些UIScrollViews是可缩放的并包含UIImages的子视图。在执行此操作时,我将链接存储到数组中的UIImageViews:

UIScrollView *imageScrollView = [[UIScrollView alloc] initWithFrame:ScrollViewImageRect];
[imageScrollView setMinimumZoomScale:1.0];
[imageScrollView setMaximumZoomScale:2.0];
imageScrollView.delegate = self;

UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(x, y, w, h)];
[imagelinkArray addObject:imageView];
[imageScrollView addSubview:imageView];

[self.scrollView addSubview:imageScrollView];

viewForZoomingInScrollView中我可以获取主ScrollView的当前页面并返回链接:

- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView
{
    return [imagelinkArray objectAtIndex:page - 1];
}

到目前为止一切正常,但现在我也想在我滑动到另一个页面时重置缩放比例,否则当我向后滑动时,图像仍然会被放大。

因此我正在检查-(void)scrollViewDidScroll:当前页面是否确实改变了哪个也工作正常,但后来我不知道如何实际重置未在其中声明的UIImageView的缩放比例。 h文件和我唯一的链接是数组中的那个。如何更改具有此类链接的对象的属性?

1 个答案:

答案 0 :(得分:0)

好的,与此同时,我找到了一个问题的答案:

UIScrollView *changeScrollView = (UIScrollView*)[imagescrolllinkArray objectAtIndex:i];
NSLog(@"%@", changeScrollView);

打开之前制作并存储在Array中的imageScrollView,以便更改它的值......