iOS removeFromSuperview和zoom

时间:2014-01-07 19:48:17

标签: ios objective-c

我添加了多张图片并用缩放功能显示它们。 由于内存大小有限,我应该尝试删除一些已经在removeFromSuperview中看到的内容。 我的问题是,当我尝试缩放时,所选图像会被removeFromSuperview消失。

我的代码如下:

if ( [contentView viewWithTag:CONTENT_IMAGE_TAG_NUM + index] ) {
    if (index > 2) {
        UIView *prevContentView = [contentView viewWithTag:(CONTENT_IMAGE_TAG_NUM + index - 2)];
        if (prevContentView) {
            [prevContentView removeFromSuperview];
            [[SDImageCache sharedImageCache] clearMemory];
        }
    }
} else {
    UIImageView *imageView = [self addContentImage:index contentArray:contentArray prevImageHeight:prevImageHeight];
-----

}

当我尝试放大第3张图像时,它会消失。 为了解决缩放问题,我删除了'removeFromSuperview'并且可以很好地缩放。但它造成了记忆问题。我得到了记忆警告。我怎么解决这个问题?我想解决缩放和内存问题。 请告诉我。提前致谢。

1 个答案:

答案 0 :(得分:1)

单元格在表格视图和集合视图中重复使用,因此您不必担心内存太多,因为您使用的图像视图将切换其image,从而释放以前保留的图像。收到内存警告时,另一端的SDImageCache应刷新内存缓存。所以我猜你在其他地方遇到了问题。