如何发布视图?

时间:2011-06-03 17:52:22

标签: ios uiview view release

我在viewDidLoad中创建视图,例如

UIScrollView* scrollViewright = [[UIScrollView alloc] initWithFrame:CGRectMake(0,0,400,768)];
[scrollViewright setContentSize:CGSizeMake(400,1000)];
[self.view addSubview:scrollViewright];

那么,我该如何发布呢?

我使用[scrollViewright release];在' - (void)dealloc'和self.scrollViewright = nil' - (void)viewDidUnload'中,它们都告诉我错误,所以有人可以帮助我吗?

2 个答案:

答案 0 :(得分:1)

由于addSubview:将保留scrollViewright,您可以在addSubview:之后立即发布,或在您首次声明时添加autorelease消息:

UIScrollView* scrollViewright = [[[UIScrollView alloc] initWithFrame:CGRectMake(0,0,400,768)] autorelease];

请注意scrollViewrightviewDidLoad内的局部变量,因此在该方法之外不可用。

答案 1 :(得分:1)

你有两种可以完成的发布:

UIScrollView* scrollViewright = [[UIScrollView alloc] initWithFrame:CGRectMake(0,0,400,768)];
[scrollViewright setContentSize:CGSizeMake(400,1000)];
[self.view addSubview:scrollViewright];
[scrollViewright release];

下一个,当你想从主视图中删除scrollView时:

[scrollViewright removeFromSuperview];