添加或删除视图时 NSViewController 是否会收到通知?

发布于 2024-11-08 17:44:02 字数 262 浏览 0 评论 0原文

对于 iOS,我使用 UIViewController 的 viewWillAppear 和 viewWillDisappear 来挂钩和取消挂钩控制器模型上的侦听器。这样,如果未显示视图,控制器不会执行任何工作,并且可以确保在显示视图时所有内容都同步。

我想对 Mac 做同样的事情,但没有看到 NSViewController 收到有关其视图被添加或从显示器中删除的通知的任何方式。我应该继承 NSViewController 的子类,添加通知方法,然后让添加/删除视图的人调用这些方法吗?

For iOS, I was using UIViewController's viewWillAppear and viewWillDisappear to hook up and unhook listeners on the controller's model. This way the controller doesn't do any work if it's view is not being shown, and can make sure everything is synced up when the view is shown.

I'd like to do the same for Mac, but don't see any way that an NSViewController gets notified about its view being added or removed from the display. Should I just subclass NSViewController, add the notification methods, and have whoever adds/removes the views call those methods?

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

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

发布评论

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

评论(2

錯遇了你 2024-11-15 17:44:02

对于优胜美地来说,现在的答案是“是”。

As of Yosemite, the answer is now "Yes."

杯别 2024-11-15 17:44:02

这是一个老问题,但答案是“不,不会被通知”。您需要子类化并自己完成。我还将我的子类连接到响应者链。

This is an old question but the answer is "No, it will not be notified". You need to subclass and do it yourself. I also hooked up my subclass to the responder chain.

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