对于 UIViewController 哪些方法应该“释放”?并设置为“nil”出口/实例变量?

发布于 2024-11-08 17:52:52 字数 177 浏览 0 评论 0原文

对于 UIViewController 哪些方法应该“释放”并设置为“nil”出口/实例变量?

我应该使用“viewDidUnload”和“dealloc”中的哪个方法:

  1. 类中的插座或其他成员变量的“release”,以及
  2. “xxx = nil”(即设置为nil)

for a UIViewController which methods should a "release" and set to "nil" the outlets/instance variables?

That which of the methods out of "viewDidUnload" and "dealloc" should I be putting:

  1. The "release" for outlets or other member variables in the class, and
  2. The "xxx = nil" (i.e. set to nil) in

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

倒数 2024-11-15 17:52:52

在 viewDidUnload 中,典型的做法是使用访问器将视图控制器视图中嵌入的任何对象(按钮、视图、文本字段、可能位于视图层次结构中的 UIView 的任何后代)置为 nil:

self.myButton = nil;

在 dealloc 中,您应该直接释放所有保留的变量,包括子视图:

[myButton release];
[someStateObject release];

In viewDidUnload typical practice is to nil, using accessors, any objects embedded in the view controller's view - buttons, views, textfields, any descendant of UIView that could be in the view hierarchy:

self.myButton = nil;

In dealloc you should release ALL retained variables directly, including subviews:

[myButton release];
[someStateObject release];
潦草背影 2024-11-15 17:52:52

我相信在 -dealloc 中,您应该直接使用 ivars;在其他情况下,例如 -viewDidUnload,您需要将属性清零。

I believe that in -dealloc, you should use the ivars directly; in other cases as like -viewDidUnload, you’ll want to nil the properties.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文