[英]Declaring a View as a property v. Temporary Creation
我最近开始完全以编程方式(没有界面生成器)创建iOS应用程序,并且想知道在使用ViewController的视图之前将其声明为属性,而不是简单地在loadview函数中进行创建是否有任何优势/差异。 另外,如果我将视图用作属性,是否可以在控制器的dealloc中取消分配视图?
即这个
- (void)loadView
{
_rootView = [[RootView alloc] initWithFrame:CGRectZero];
[self setView:self.rootView];
}
与
- (void)loadView
{
RootView *rootView = [[RootView alloc] initWithFrame:CGRectZero];
[self setView:rootView];
[rootView release];
}
view
已经是 UIViewController
的属性。 在您的示例中声明一个额外的属性(例如rootView
将毫无意义。 因此,您的第二个例子就是要走的路。 (我不确定为什么要创建宽度和高度为零的视图,但这是另一回事了。)
在这种情况下,您dealloc
实现(如果你提供一个)应该调用[super dealloc]
以确保view
属性发送一个release
消息,当然你应该始终调用[super dealloc]
在任何重写实现dealloc
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.