没有用户交互,NSTextField不会向Core Data发送值

时间:2012-01-23 10:48:08

标签: core-data nstextfield

我对Cocoa的核心数据有一个奇怪的问题:只是到处搜索答案,但没有运气,这就是我发布此帮助请求的原因。

基本上,我有一系列NSTextField绑定到实体的属性。为实现这一点,我只需将Nind to选项的值设置为NSArrayController,使用Controller Key进行选择,将Model Key Path设置为属性名称。

只要我直接在NSTextField中书写,一切都很好。完成后,一旦我关注另一个NSTextField,我就会自动提供Core Data,或者按Enter或Tab键。 但是如果我间接地在NSTextField中获取一个值(这是以编程方式,没有用户必须在其中写入),则NSTextField的值不会发送到Core Data。

检查了NSTextField的值绑定中的“持续更新值”选项后没有任何帮助(我试过帖子How to add data from an NSTextField to a Core Data Attribute without having to press Return or Tab after editing the TextField?

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

绑定旨在使UI及其后面的数据保持同步。如果要以编程方式更改值,请更改变量(或核心数据对象)。由于绑定,NSTextField中的值应自动更新。

另一种看待它的方法是:如果设置文本以编程方式触发绑定,您将获得无限循环:NSTextField update - >数据更新 - > NSTextfield更新 - >数据更新 - > ......等等。