防止“恢复”对于我的 Cocoa 应用程序?

发布于 2024-12-05 12:20:48 字数 188 浏览 3 评论 0原文

我喜欢 Lion 中的新“恢复”功能。重新启动后,窗口大小和位置与您离开时完全相同。但在开发过程中,这有点烦人。 如果我在界面生成器中调整窗口大小并重新启动我的应用程序,它不会有新的大小,而是旧的大小。

过去,您必须设置 AUTOSAVE 属性才能获得这种行为,但通过 Resume,这一切都会自动发生。我可以以某种方式禁用我的应用程序的恢复吗?

I love the new "Resume" feature in Lion. After a restart window size and position is exactly how you left it. But during development this is a bit annoying.
If I resize a window in the Interface Builder and restart my application it doesn't have the new size but the old size.

In the past you had to set the AUTOSAVE property to get this kind of behavior but with Resume it all happens automatically. Can I disable resume for my application somehow?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

旧城烟雨 2024-12-12 12:20:48

是的。正如 Lion AppKit 发行说明中记录的,您可以为您的应用程序设置 ApplePersistenceIgnoreState 用户默认值。 (文档暗示该值并不重要;只需将其设置为某个值即可。)

仅针对调试运行执行此操作的一种简单方法是设置它,同时在正常使用应用程序时保留状态恢复功能在 Xcode 中。在方案的“运行”操作中,为 -ApplePersistenceIgnoreState 设置一个命令行参数,并紧随其后设置另一个具有该值的命令行参数(例如,YES)。这利用了 AppKit 从命令行读取用户默认值的功能。

Yes. As documented in the Lion AppKit release notes, you can set the ApplePersistenceIgnoreState user default for your application. (The docs imply that the value isn't significant; it just needs to be set to something.)

An easy way to do this for debug runs only, while preserving the state restoration feature when you use your app normally, is to set it in Xcode. In your scheme's Run action, set a command-line argument for -ApplePersistenceIgnoreState, and, immediately after it, another one with the value (e.g., YES). This makes use of AppKit's feature of reading user defaults from the command-line.

绅士风度i 2024-12-12 12:20:48

如今 Xcode 有一个用于此目的的复选框。使用“编辑方案...”,选择“运行”-> “选项”,还有“持久状态”和“启动应用程序而不恢复状态”复选框。勾选后,下次运行将不恢复。

屏幕截图显示“启动应用程序而不恢复状态”

Xcode has a checkbox for this these days. Use "Edit Scheme...", choose "Run" -> "Options", and there is "Persistent State" with a "Launch app without state restoration" checkbox. When checked, the next run will be without restoration.

Screenshot showing the "Launch app without state restoration"

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文