我正在努力在我以前的 Snow Leopard 应用程序中实施 Resume。对于我的应用程序的主窗口,我选中了Restorable
Interface Builder 中的复选框,一切正常。它的代表已经调用了它-window:willEncodeRestorableState:state
,-window:didDecodeRestorableState:
很好。一切正常。
我有另一个窗口,当用户退出时,它有时也会打开。我检查Restorable
了它,并实现了上面的两种方法。..willEncode..
当我在窗口打开的情况下退出时..didDecode..
被调用,但从未被调用,并且窗口不会被恢复。我已经阅读了文档,似乎我可能想要创建一个restore class,但是文档并没有特别清楚地说明如何这样做。
我尝试<NSWindowRestoration>
在我的 AppDelegate 和第二个可恢复窗口的委托中实现该协议,但+restoreWindowWithIdentifier:state:completionHandler:
从未为它们中的任何一个调用该方法。
我错过了什么?我是否在正确的轨道上,NSWindowRestoration
但做得不对?文档谈论恢复课程的方式,听起来好像只有一个。我需要在应用程序的 plist 中指定它吗?