当代码通过而不是接口更改属性时通知cocoa绑定系统

当代码通过而不是接口更改属性时通知cocoa绑定系统,cocoa,interface-builder,cocoa-bindings,Cocoa,Interface Builder,Cocoa Bindings,我正在编写一个倒计时计时器,而不是在每个刻度上调用-[NSTextField setDoubleValue:secondsRemaining],我希望通过对象控制器将secondsRemaining属性绑定到接口元素 问题是,secondsRemaining是由每个刻度上的代码修改的,而不是由接口修改的,因此更改似乎不会被广播 我的问题分为两部分: 1) 这是一种使用绑定的明智方式,还是我应该在我的应用程序控制器中坚持使用-[NSTextField setDoubleValue:: 2) 如果使

我正在编写一个倒计时计时器,而不是在每个刻度上调用
-[NSTextField setDoubleValue:secondsRemaining]
,我希望通过对象控制器将
secondsRemaining
属性绑定到接口元素

问题是,
secondsRemaining
是由每个刻度上的代码修改的,而不是由接口修改的,因此更改似乎不会被广播

我的问题分为两部分:

1) 这是一种使用绑定的明智方式,还是我应该在我的应用程序控制器中坚持使用
-[NSTextField setDoubleValue::

2) 如果使用绑定,如何通知接口值已更改


谢谢

使用兼容KVO的设置器或在您更改值时使用设置器。

使用兼容KVO的设置器或在您更改值时使用设置器。

最好使用前者。这要容易得多,最好是前者。这要容易得多。