iOS:在数组中存储指向 UIImageViews 的链接,然后使用它们

Posted

技术标签:

【中文标题】iOS:在数组中存储指向 UIImageViews 的链接,然后使用它们【英文标题】:iOS: Storing Link to UIImageViews in Array, using them afterwards 【发布时间】:2014-03-23 23:25:50 【问题描述】:

我想制作一个 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:,如果当前页面确实发生了变化,这也可以正常工作,但是我不知道如何实际重置未在 .h 文件中声明的 UIImageView 的缩放比例我唯一的链接是数组中的链接。如何更改具有此类链接的对象的属性?

【问题讨论】:

【参考方案1】:

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

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

打开之前制作并存储在数组中的 imageScrollView 以更改其值...

【讨论】:

以上是关于iOS:在数组中存储指向 UIImageViews 的链接,然后使用它们的主要内容,如果未能解决你的问题,请参考以下文章

在 superview 中存储 UIImageViews 及其位置

如何从数组中创建一个在一行中显示多个 UIImageViews 的类?

调整 UIImageViews 数组中单个图像的大小

iOS入门小知识-数组

iOS 开发-UIImageViews(图片)的使用

如何将指向数组的指针存储在数组中? [关闭]