我在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'中,它们都告诉我错误,所以有人可以帮助我吗?
答案 0 :(得分:1)
由于addSubview:
将保留scrollViewright
,您可以在addSubview:
之后立即发布,或在您首次声明时添加autorelease
消息:
UIScrollView* scrollViewright = [[[UIScrollView alloc] initWithFrame:CGRectMake(0,0,400,768)] autorelease];
请注意scrollViewright
是viewDidLoad
内的局部变量,因此在该方法之外不可用。
答案 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];