NSWindow setFrame不在Lion工作?

时间:2011-12-23 00:30:36

标签: cocoa osx-lion nswindow nswindowcontroller

我在Cocoa和Lion中一直在为这个问题自杀,并且想知道是否有人遇到过这个问题并且(希望)找到了解决方案。

我有一个非常简单的项目(代码可以在这里下载:http://cl.ly/2T0N2C1A3K1r2h1q0R1e),其中NSWindowController使用NSWindow上的setFrameOrigin:方法分配窗口的位置。

首次运行时,这可以正常工作,但是一旦用户移动窗口,退出和退出重启应用程序窗口恢复它以前的位置,而不是使用setFrameOrigin:命令。

NSWindowController已经禁用级联和自动保存,因此不应该发生。

此外,我已经在Snow Leopard上进行了测试,代码可以100%运行 - 这只是Lion的问题。

有什么想法吗?

1 个答案:

答案 0 :(得分:10)

这是Lion的“用户界面保留”功能,记录在App Programming Guide

简单的解决方案是在窗口的属性窗格中取消选中“Restorable”。