21

我注意到 OS X 上的所有应用程序似乎都保存了您设置的大小。下次打开它时,它通常处于相同的位置和大小。

我正在制作一个应用程序,我注意到在调整大小后,如果我再次启动应用程序,它只是我在 Xcode 4 的 IB 中设置的大小,而不是我在启动时调整它的大小。

每次更改窗口大小时,我是否必须手动保存?或者有没有更简单的方法通过 IB 做到这一点?(如果改变任何东西,我的窗口确实设置了最小尺寸。)

4

4 回答 4

34

苹果让它变得简单。在界面生成器中,对于您的窗口,只需在Autosave字段中输入一个唯一的名称,它将以该名称保存在全局用户默认值下。例如

在此处输入图像描述

于 2012-04-11T23:25:35.160 回答
5

当您在 Interface Builder 中选择主窗口时,应该Autosave在属性检查器中调用一个属性。把任何名字放在那里对我来说都是诀窍。

于 2012-04-11T23:25:01.080 回答
5

在 IB 中设置Autosave名称后,我可以看到我的窗口框架正在保存到它的首选项文件中,但自动恢复仍然不起作用。然后我记得取消选中常规设置下的系统偏好Close windows when quitting an app设置中的复选框,并且窗口位置按预期恢复。

于 2016-12-09T11:25:46.747 回答
2

如果你没有使用 IB 创建你的窗口,你可以在 Swift 中设置这个属性:

setFrameAutosaveName(_ name: NSWindow.FrameAutosaveName)

(该frameAutosaveName属性get仅)

例如:

windowController.window?.setFrameAutosaveName("appWindow")
于 2021-01-29T20:06:26.580 回答