【发布时间】:2017-10-03 15:30:04
【问题描述】:
我来自 iOS 世界,viewDidAppear、viewDidDisappear 用于跟踪用户何时切换到另一个视图或从该视图返回。
跟踪与 NSViewController 关联的视图何时变为“活动”(用户从另一个具有视图的窗口切换到该视图)的正确方法是什么?
我正在寻找一些回调/方法来覆盖以了解用户转换回视图的情况。
【问题讨论】:
标签: macos cocoa nsview nsviewcontroller
我来自 iOS 世界,viewDidAppear、viewDidDisappear 用于跟踪用户何时切换到另一个视图或从该视图返回。
跟踪与 NSViewController 关联的视图何时变为“活动”(用户从另一个具有视图的窗口切换到该视图)的正确方法是什么?
我正在寻找一些回调/方法来覆盖以了解用户转换回视图的情况。
【问题讨论】:
标签: macos cocoa nsview nsviewcontroller
macOS 上的 Cocoa 支持 viewDidAppear() 等。自 10.10 起。它的工作原理与 iOS 相同。
但是,如果您的目标是较早的 macOS 版本,则回调将不起作用。在这种情况下,您可以近似该行为,但这有点棘手。
您可以通过NSWindowDelegate关注窗口级别的内容
尤其是回调 windowDidBecomeKey 和 windowDidResignKey。这些可以用来通知你的 NSViewControllers。
你在 NSView 上也有一些有用的方法,尤其是viewWillMove(toWindow:)。
【讨论】: