У меня есть NSTextField, связанный с моей моделью. Если я изменяю содержимое текстового поля программно, модель не обновляется. Я знаю, что вместо этого вы должны обновить модель.
Но я пытаюсь реализовать подкласс NSTextField, который распознает прокрутку, когда мышь наводит на нее курсор, чтобы изменить ее числовое значение. Очевидно, у меня нет доступа к модели из этого подкласса. Итак, у вас есть какие-либо предложения, как я могу это сделать?
РЕШЕНИЕ (спасибо noa):
- (void)scrollWheel:(NSEvent *)theEvent {
[self setFloatValue:[self floatValue] - [theEvent deltaY]];
NSDictionary *bindingInfo = [self infoForBinding: NSValueBinding];
NSObject *boundObject = [bindingInfo valueForKey:NSObservedObjectKey];
NSString *keyPath = [bindingInfo valueForKey:NSObservedKeyPathKey];
[boundObject setValue:[NSNumber numberWithFloat:[self floatValue]]
forKeyPath:keyPath];
}