如何发布像这样分配的UIImageView?

时间:2011-05-19 20:45:30

标签: iphone memory-leaks uiimageview release

我已经在我的tableview单元格的setBackground方法中分配了一个UIImageView,如下所示:

 [cell setBackgroundView:[[UIImageView alloc]initWithImage:rowBackground]];

当我在XCode 4中运行Analyze时,它会将此行突出显示为可能的内存泄漏。我如何发布这个UIImageView,因为我没有指向发布调用的引用?

2 个答案:

答案 0 :(得分:1)

发送autorelease消息:

[cell setBackgroundView:[[[UIImageView alloc]initWithImage:rowBackground] autorelease]];

使用自动释放消息,您声明您不希望拥有超出发送消息范围的对象。

答案 1 :(得分:1)

您可以以不同的方式分配它(即将其存储在ivar中并释放它),或者在其上调用autorelease,如下所示:

[cell setBackgroundView:[[[UIImageView alloc]initWithImage:rowBackground] autorelease]];