Anmelde Kakao Bindungen System, wenn der Code eine Eigenschaft von anstelle der Schnittstelle ändert

StackOverflow https://stackoverflow.com/questions/1810071

Frage

Ich schreibe einen Countdown-Timer und stattdessen -[NSTextField setDoubleValue:secondsRemaining] auf jedem Tick zu nennen, würde Ich mag die secondsRemaining Eigenschaft auf ein Element der Benutzeroberfläche über ein Objekt Controller binden.

Das Problem dabei ist, dass secondsRemaining von Code auf jedem Tick geändert wird, nicht durch die Schnittstelle, so dass die Änderung ausgestrahlt werden soll, nicht wird erscheinen.

Ich habe zwei Teile auf die Frage:

1) Ist die eine sinnvolle Art und Weise Bindungen zu verwenden, oder soll ich bleibe mit -[NSTextField setDoubleValue:] in meinen App-Controller?

2) Wenn ich Bindungen tun, wie können die Schnittstelle informieren, dass der Wert geändert hat?

Danke!

War es hilfreich?

Lösung

Verwenden Sie entweder eine KVO-konformen Setter oder senden manuelle Benachrichtigungen wenn Sie den Wert mutieren.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top