我有一个绑定到某个对象“缩放”属性的 NSTextField。
在这个对象的类实现中,我有以下
- (void)setZoom:(CGFloat)zoom
{
_zoom = MAX(0, MIN(10, zoom));
}
如果我在文本字段中写“-5”,setZoom:
将以“-5”作为参数调用,_zoom 将设置为 0。
然后问题是文本字段没有更新自身,它显示“-5”而不是重新读取它刚刚设置的属性值。
如果我myObject.zoom = -5;
在代码中这样做,文本字段将正确显示 0。
我试图将 _zoom =... 包装在 willChangeValueForKey/didChangeValueForKey 调用中,但它没有改变任何东西。