【问题标题】:Notifying cocoa bindings system when code changes a property by instead of the interface当代码通过而不是接口更改属性时通知可可绑定系统
【发布时间】:2009-11-28 10:03:39
【问题描述】:

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

这样做的问题是secondsRemaining在每个tick上都是由代码修改的,而不是由界面修改的,所以这个变化似乎没有被广播。

我的问题有两个部分:

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

2) 如果我确实使用了绑定,如何通知接口该值已更改?

谢谢!

【问题讨论】:

    标签: cocoa interface-builder cocoa-bindings


    【解决方案1】:

    当你改变值时,要么使用符合 KVO 的设置器,要么使用 send manual notifications

    【讨论】:

    • 最好是前者。这要容易得多,很多
    猜你喜欢
    • 1970-01-01
    • 2011-09-14
    • 1970-01-01
    • 1970-01-01
    • 2013-02-03
    • 2015-07-11
    • 2013-08-16
    • 2011-08-02
    • 1970-01-01
    相关资源
    最近更新 更多