- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
假设我显示一个像这样的窗口:
[[TBAddTaskWindowController new] showWindow:self];
TBAddTaskWindowController 对象要在哪里释放?是在 windowWillClose 中调用 [self release] 的通用解决方案吗?
让任何其他对象“拥有”该窗口感觉不对,因为它应该一直存在,直到用户关闭它。
最佳答案
是的,释放窗口 Controller 的常见方法是:
- (void)windowWillClose:(NSNotification *)notification
{
[self autorelease];
}
窗口 Controller 只需要在窗口存在时就存在,因此当窗口消失时自动释放它是非常有意义的。
记住还要删除任何其他观察者等。
<小时/>[添加了在 ARC 下工作的信息]对于 ARC,您需要在窗口打开时保留对窗口控件的强引用,然后在窗口关闭时将其删除。
为此,我在窗口上添加了一个使用两种方法控制的类别:
pnl_addWindowController
— 首次打开窗口时由窗口 Controller 调用pnl_removeWindowController
— 从 windowWillClose
调用该类别维护事件窗口 Controller 的全局NSMutableSet
。代码本质上只是 [gWindowControllers addObject:self]
和 [gWindowControllers removeAllObjects]
,其中包含一些 NSMutableSet 的延迟创建和一些锁定。
关于objective-c - 什么负责释放 NSWindowController 对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1031715/
我新发现了 Perl fork ,我非常喜欢。但有一件事让我担心——如果我只是左右分离进程,这肯定会在某个地方引起一些问题。是否应该使用一种合理的检查来确保我的小应用程序不会占用我机器的所有资源? 拿
谁负责 MVVM 中的异步数据获取?例如,我的 View 有 5 个不同的数据集合要获取,我希望按预定义的顺序异步检索这些数据。为此,我使用协程和任务。 问题:VM 是否对此负责,我的模型/存储库应该
我有什么 ember-cli POD 结构。我有嵌套的路由,因此有以下文件夹结构: | |_pods |_items |_index | |_
我有一个 C# WPF 应用程序,它从数据库中读取数据然后做一些工作。但问题是当我读取数据时,我的 UI 没有响应。我已经尝试过任务和调度程序。他们都没有帮助。下面的代码在 button_click
在使用 /sys/class/leds/ 摆弄 LED 之后,我现在正试图了解如何使用 linux kernel power supply attributes 控制计算机中的电池。 ,特别是 CHA
我在我的桌面应用程序中做了一些非常简单的错误记录,该应用程序通过 SerialPort 与设备通信。我做的一件事是设置一个全局异常捕获器,它除了使用以下方法记录堆栈跟踪外什么都不做: AppDomai
我是一名优秀的程序员,十分优秀!