此代码适用于表格中的单个选择或多个选择,并且所选对象的值相同。
NSNumber *currentValue = (NSNumber *)[mArrayController valueForKeyPath: mBindingKeyPath];
但是如果我对所选对象有多个不同值的选择,我会收到此错误并崩溃 - 这是正确的,因为我的表中有多个选择。 但是我当然不想崩溃,而是将选择作为一个数组或它应该如何工作?
2014-04-24 17:20:33.167 DC MacOSX[5746:303] -[_NSStateMarker floatValue]: unrecognized selector sent to instance 0x1006135a0 2014-04-24 17:20:33.168 DC MacOSX[5746:303] -[_NSStateMarker floatValue]: unrecognized selector sent to instance 0x1006135a0 2014-04-24 17:20:33.170 DC MacOSX[5746:303] ( 0 CoreFoundation 0x00007fff8b71bb06 __exceptionPreprocess + 198 1 libobjc.A.dylib 0x00007fff850b03f0 objc_exception_throw + 43 2 CoreFoundation 0x00007fff8b7b240a -[NSObject(NSObject) doesNotRecognizeSelector:] + 186 3 CoreFoundation 0x00007fff8b70a02e ___forwarding___ + 414 4 CoreFoundation 0x00007fff8b709e18 _CF_forwarding_prep_0 + 232 5 Dreamcatcher MacOSX 0x0000000100066199 -[CustomNSSliderJoystick1D mouseDragged:] + 434 6 AppKit 0x00007fff89a60b81 -[NSWindow sendEvent:] + 8504 7 AppKit 0x00007fff89a5c644 -[NSApplication sendEvent:] + 5761
答案 0 :(得分:2)
谷歌: " NSArrayController类引用"
查找:selectedObjects:
NSArrayController
实例方法是您要用于查询选择的方法。绑定保证阵列控制器处于状态,它匹配绑定它的任何东西,通常是视图。但是绑定它的全部意义在于,您可以使用NSArrayController
方法来访问该状态。
这个答案看起来很轻浮 - 让我为你做谷歌 - 但你是新手,而尤其是使用OSX API,你会指的是developer.apple。 com类一直引用。 AppKiDo和Dash是很好的工具。
您还会发现isKindOfClass
有用。