【发布时间】:2010-04-28 14:32:14
【问题描述】:
我一直在从事一个 iPhone 项目,在该项目中,我们以编程方式在代码中创建了所有用户界面。现在我要开始一个新的 iPhone 项目并考虑使用 Interface Builder,因为它被推荐给我作为一个非常有用的工具,它比用代码编写所有东西更容易让人头疼,而且通常更快(关于开发时间)。
但是,由于之前使用 Interface Builder 的问题以及由此导致的内存泄漏,我的团队成员有些担忧。因此,他们建议再次用代码构建所有内容。我不知道这些担忧从何而来,但也许比我们更有经验的人可以就该主题提供一些见解。
做一个简单的Google search 并不能真正提供任何信息证明接口生成器本身造成的内存泄漏存在任何问题。
通过查看来自 Apple 的 official documentation,我只看到了我必须注意的这三件事:
@property (nonatomic, retain) IBOutlet UIUserInterfaceElementClass *anOutlet;
"然后你应该要么合成相应的访问器方法,要么根据声明实现它们,并(在 iPhone OS 中)在 dealloc 中释放相应的变量。"
- (void)viewDidUnload {
self.anOutlet = nil;
[super viewDidUnload];
}
我错过了什么?
【问题讨论】:
标签: iphone memory-leaks interface-builder