【问题标题】:Trouble with data not saving with bindings and shared NSUserDefaults in IB在 IB 中无法使用绑定和共享 NSUserDefaults 保存数据的问题
【发布时间】:2011-03-09 22:34:20
【问题描述】:

我遇到了一个我无法弄清楚的奇怪问题。我对Interface Builder有点n00b。我正在尝试做的似乎应该很简单,但由于某种原因它不起作用。

在界面生成器中,我有一个带有简单 NSTextField 的首选项窗口。我已经使用控制器键“values”和模型键“test”将值绑定设置为共享用户默认控制器。我构建/运行我的应用程序并打开首选项窗口,在所述文本字段中输入一些随机值,关闭窗口。命令-Q 应用程序。然后在 shell 中,我为我的应用程序执行“默认读取 com.xxx.yyy”,但找不到键和值。话虽如此,似乎下次我启动应用程序并更改它的工作值时,但前提是我在关闭窗口之前将焦点从 NSTextField 关闭。

在 NSUserDefaults 的文档中,它说共享控制器会立即保存值,我在这里错过了什么愚蠢的东西吗?

感谢您的帮助。

【问题讨论】:

    标签: xcode interface-builder cocoa-bindings nsuserdefaults


    【解决方案1】:

    我在被问到这个问题后很长时间才回答这个问题,以防其他人觉得它有用。

    听起来您需要为已绑定的文本字段设置“持续更新值”。否则,仅发送该值,因此,仅当发生某些事情以“完成”编辑时才更新首选项。这通常是通过按 Return 触发的,并且可能还会在您将焦点从窗口上移开时发生(尽管我只是在自己的一个应用程序中对此进行了测试,但它似乎没有提交编辑)。

    【讨论】:

      猜你喜欢
      • 2012-05-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-13
      • 2012-05-24
      相关资源
      最近更新 更多