iphone - 在 viewDidUnload 中释放有什么区别吗?

标签 iphone xcode4 viewdidunload

我是 iPhone 开发新手。

我在我的应用程序中使用一些按钮和标签。我将在 dealloc 函数中释放所有这些按钮和标签。
我也在 viewDidUnload 中释放它们。

- (void)viewDidUnload
{
[super viewDidUnload];
self.ans1 = nil;
self.ans2 = nil;
self.ans3 = nil;
self.ans4 = nil;
self.button = nil;
self.button2 = nil;
self.button3 = nil;
self.button4 = nil;
}

我只是想知道它对内存管理有好处还是对内存管理没有影响。
为什么我们用它?

提前致谢..!!

最佳答案

调用 viewDidUnload 时,卸载的不是 View Controller ,而是其 View View Controller 在被释放之前一直保持事件状态。

在viewDidUnload中,您必须释放属于 View 一部分的那些对象以及可以并且将在viewDidLoad中重新创建的所有对象(因为当 View Controller 需要重新创建其 View 时,viewDidLoad将被再次调用)。这包括您的所有网点。您还必须将这些变量设置为 nil 以避免过度释放它们。

因为在 dealloc 中,您应该释放 View Controller 保留的所有对象,包括那些包含在 viewDidUnload 中的对象。

关于iphone - 在 viewDidUnload 中释放有什么区别吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7089964/

相关文章:

iphone - iphone css 媒体查询网站

objective-c - 如何 'pop' 到不在堆栈上的 View Controller

ios - UITableView 一次只勾选一行

deprecated - ios6 中不再调用 viewDidUnload

ios - 呈现 ViewController 的 Xcode 问题

iphone - Tableview 中的 UITextView 文本得到覆盖?

ios - UIscrollView 中的 viewControllers 没有调用 ViewDidUnload

ios - viewDidUnload 的最佳实践?

iphone - Xcode 7 : UITextview doesn't aligned properly for 3 different sizes iPhone screen

macos - 如何在cocoa应用程序中使用PDFView?