我发现在OS X上所有的应用程序似乎都会保存你设置的大小。下次打开时通常处于相同的位置和大小。
我正在开发一个应用程序,但是我注意到,如果我调整了窗口大小后再次启动应用程序,它只会显示我在Xcode 4的IB中设置的大小,而不是我在启动时调整的大小。
我需要手动保存每次更改窗口大小吗?还是有更简单的方法通过IB实现这一点?(我的窗口已设置最小大小,如果这会影响什么)。
我发现在OS X上所有的应用程序似乎都会保存你设置的大小。下次打开时通常处于相同的位置和大小。
我正在开发一个应用程序,但是我注意到,如果我调整了窗口大小后再次启动应用程序,它只会显示我在Xcode 4的IB中设置的大小,而不是我在启动时调整的大小。
我需要手动保存每次更改窗口大小吗?还是有更简单的方法通过IB实现这一点?(我的窗口已设置最小大小,如果这会影响什么)。
苹果使这变得简单。在界面编辑器中,对于您的窗口,只需在 Autosave
字段中输入唯一的名称,它就会将其保存在全局用户默认值下的该名称下。例如:
在IB中设置Autosave
名称后,我可以看到窗口的框架被保存到其首选项文件中,但自动恢复仍然无法工作。然后我记得在系统偏好设置的常规设置下取消勾选退出应用程序时关闭窗口
复选框,窗口位置正常恢复。
当您在界面构建器中选择主窗口时,属性检查器中应该有一个名为Autosave
的属性。对我来说,在那里放入任何名称都可以解决问题。
setFrameAutosaveName(_ name: NSWindow.FrameAutosaveName)
frameAutosaveName
属性是只读的。)windowController.window?.setFrameAutosaveName("appWindow")