我正在子类一个NSTextField,这样用户就可以用上下游标键增加/减少整数值。它通过其委托可以正常工作,但是通过setIntegerValue:设置用户界面状态并不会通过可可绑定更新基础值绑定。
我不需要更新控件,而是需要更新模型,因此我需要找到控件绑定到的对象和使用的关键路径。
我在任何地方都找不到如何做到这一点,所以我重载了我的NSTextField子类的NSTextField方法,在那里建立了绑定,可以看到观察到的对象及其关键路径,但是我肯定是在复制控件中已经可用的信息。
是否有一种方法可以通过Cocoa绑定获得控件绑定的对象和关键路径,而无需像这样进行黑客攻击?
我很感谢你的帮助。
发布于 2015-07-03 08:52:38
是的,有一个更好的方法:
- (NSDictionary *)infoForBinding:(NSString *)binding包含绑定信息的字典,如果绑定没有绑定,则为零。该字典包含三个键/值对:
NSObservedObjectKey:对象绑定、NSObservedKeyPathKey:键路径绑定、NSOptionsKey:字典及其绑定的选项及其值。
https://stackoverflow.com/questions/31201259
复制相似问题