我已经在我的tableview单元格的setBackground方法中分配了一个UIImageView,如下所示:
[cell setBackgroundView:[[UIImageView alloc]initWithImage:rowBackground]];
当我在XCode 4中运行Analyze时,它会将此行突出显示为可能的内存泄漏。我如何发布这个UIImageView,因为我没有指向发布调用的引用?
答案 0 :(得分:1)
发送autorelease消息:
[cell setBackgroundView:[[[UIImageView alloc]initWithImage:rowBackground] autorelease]];
使用自动释放消息,您声明您不希望拥有超出发送消息范围的对象。
答案 1 :(得分:1)
您可以以不同的方式分配它(即将其存储在ivar中并释放它),或者在其上调用autorelease
,如下所示:
[cell setBackgroundView:[[[UIImageView alloc]initWithImage:rowBackground] autorelease]];