cocoa - NSWindowController 是否支持 encodeRestorableState()?
问题描述
对于我的生活,我无法弄清楚。我想我尽了一切努力让该encodeRestorableState(with:)
方法在我的NSWindowController
子类中被调用,但事实并非如此。
在花了几个小时之后,我认为它实际上可能根本不受支持。那么这段文档是什么意思呢?
请注意,它说使用该方法而不是覆盖/实现它。也许这就是我弄错的地方。
更新
进一步挖掘,我发现我在NSWindowController
子类中创建的窗口的windowController
属性设置为nil
. 我想这就是窗口不告诉控制器对其状态进行编码的原因。我现在正在弄清楚为什么会这样nil
。
解决方案
尝试调用invalidateRestorableState()
您的 NSViewController/NSWindowController 子类。稍后encodeRestorableState(with:)
将调用。
推荐阅读
- javascript - How to connect Menu Item to a class?
- haskell - 使基本 Haskell 类型成为新类型类的实例
- unit-testing - 浏览器测试时是否多次调用缓存模拟?
- javascript - 如何使用取决于第一次调用的数据链接异步/等待
- lucene - Lucene.Net 4.8 向自定义分析器添加多个过滤器
- python - matplotlibs xticks 中的表情符号
- reporting-services - SSRS 报告更改日期基于订阅
- google-analytics - 跟踪页面可见性
- grails - 是否可以使用 GroovyMock 模拟闭包?
- angularjs - 保存表格格式以在 AngularJS 中填充不同的值