我有一个Cocoa-Application,其中我有一个NSMutableArray,它包含NSImageView子类的实例。
我要做的是获取ImageViews边界原点的x值的最小值。
我试过了:
double minx =[[robots valueForKeyPath:@"@min.bounds.origin.x"] doubleValue];
以及:
double minx =[[robots valueForKeyPath:@"@min.self.bounds.origin.x"] doubleValue];
但是我收到以下错误:
[<NSConcreteValue 0x100597a20> valueForUndefinedKey:]: this class is not key value coding-compliant for the key origin.
我搜索了互联网和NSKeyValueCoding协议参考,但我没有找到解决我问题的方法。我知道我可以循环遍历NSMutableArray,但使用valueForKeyPath将是我猜的更好的方法。
答案 0 :(得分:3)
错误是因为NSRect
(来自[NSImageView bounds]
的返回值)是一个简单的struct
而不是Objective-C对象。
我建议继承NSImageView
子类并将这些值公开为属性,以便它们符合键值编码。