2011-05-19 45 views
0

我分配我的tableview細胞的方法的setBackground裏面一個UIImageView像這樣:如何釋放像這樣分配的UIImageView?

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

當我運行中的XCode 4分析它突出了這條線作爲一個可能的內存泄漏。我如何釋放這個UIImageView,因爲我沒有得到一個指向發佈調用的引用的指針?

回答

1

您可以分配不同它(即存放在伊娃和釋放),或致電autorelease就可以了,就像這樣:

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

我只工作了。我嘗試像這樣自動回收,但由於某些原因Code Sense不喜歡它。這是否是有用的。 – 2011-05-19 21:04:13

+0

cell.backgroundView = [[[UIImageView alloc] initWithImage:rowBackground] autorelease]; – 2011-05-19 21:04:22

1

發送它的autorelease消息:

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

隨着你宣佈你不想擁有超越你發送消息的範圍對象的自動釋放消息。