首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当UIScrollView子视图与UITapGestureRecognizer一起使用时,它会释放(删除)内存

当UIScrollView子视图与UITapGestureRecognizer一起使用时,它会释放(删除)内存
EN

Stack Overflow用户
提问于 2013-11-02 04:35:31
回答 1查看 116关注 0票数 0

这个例子非常简单,一堆UIImageView被作为子视图添加到一个UIScrollView

代码语言:javascript
复制
for(NSDictionary *dict in info) {
    UIImageView *imageview = [[UIImageView alloc] initWithImage:image];
    imageview.frame = CGRectMake(x, 0, 91, 91);

    [self.scrollView addSubview:imageview];
        x+=95;
        [self.scrollView setContentSize:CGSizeMake(x, 91.0)];
        //define gestures
        //single tap for wide display
        UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(wideDisplay:)];
        imageview.userInteractionEnabled = YES;
        [imageview addGestureRecognizer:singleTap];
}

UIImageView上点击一下后,它会被发送到wideDisplay:方法,以获得广泛的显示:

代码语言:javascript
复制
-(void)wideDisplay:(UITapGestureRecognizer*)gesture{

    UAModalPanel *wideScreen = [[UAModalPanel alloc] initWithFrame:self.view.bounds];
    wideScreen.padding = UIEdgeInsetsMake(20.0, 20.0, 20.0, 20.0);

    self.imageView = [[UIImageView alloc]init];
    self.imageView = (UIImageView*)gesture.view;
    self.imageView.frame = CGRectMake(20, 20, 790, 500);

    [wideScreen.contentView addSubview:self.imageView];
    [self.view addSubview:wideScreen];    

}

将imageView添加到模式视图后,此UIImageView将从滚动视图子视图中删除。imageView是一个强大的属性,但尽管如此,在添加到自定义模式视图后,它似乎正在失去引用,如何防止在选择它后将其从滚动视图中删除?

EN

回答 1

Stack Overflow用户

发布于 2013-11-02 04:42:53

您不是在每次调用-wideDisplay:时都要处理和创建self.imageView

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19734972

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档