标签如何记住释放的对象?苹果手机

时间:2009-08-18 01:29:27

标签: iphone

我有一个单独的方法来创建自定义的UITableViewCell, 以下是

-(UITableViewCell*)getCellContentView:(NSString*)cellIdentifier
{
CGRect photoFrame=CGRectMake(10, 10, 60, 60);
CGRect label1Frame=CGRectMake(85, 9, 200, 32);
CGRect label2Frame=CGRectMake(85, 38, 200, 25);
CGRect labelBgFrame=CGRectMake(0, 0, 320, 80);

UITableViewCell *cell=[[[UITableViewCell alloc] initWithFrame:CGRectMake(0, 0, 300, 80) reuseIdentifier:cellIdentifier] autorelease];


UILabel *tmp;
tmp=[[UILabel alloc] initWithFrame:label1Frame];
tmp.tag=1;
tmp.textColor=[UIColor blackColor];
tmp.font=[UIFont boldSystemFontOfSize:18];
tmp.backgroundColor=[UIColor clearColor];
[cell.contentView addSubview:tmp];
[tmp release];
}

在这里,@ tmp @已经发布---“那么,iPhone如何记住已发布的对象&我们可以将文本设置为该标签。

1 个答案:

答案 0 :(得分:2)

我想我理解你的问题:你在调用[tmp release]后询问cell.contentView如何维护其内容,是吗?

如果是这样,答案是addSubview增加引用计数(如调用retain)。所以,即使你打电话给[tmp release],tmp仍然有一个引用计数。

我触摸iPhone sdk已经有一段时间了,但我认为这是正确的。更正欢迎。