2014-04-05 5 views
0

NSArrayControllerarrangedObjects 속성은 제어되는 객체가 포함 된 배열을 반환합니다. 이 배열은 관찰, 그래서이 작업을 수행 할 수 있습니다NSOutlineController에서 배열 객체를 관찰

[_myArrayController addObserver:self forKeyPath:@"arrangedObjects.myProperty" options:0 context:myContext]; 

컨트롤러에서의 임의의 객체 myProperty 속성이 수정되는 모든 시간, 나는 그것에 대해 이야기하고있다.

이제 NSOutlineView을 사용하여 똑같은 작업을 수행해야합니다. 그러나 NSOutlineViewarrangedObjects 속성은 NSTreeNodes의 배열을 반환, 그래서 나는 같은 것을 할 필요가 :

[_myArrayController addObserver:self forKeyPath:@"arrangedObjects.representedObject.myProperty" options:0 context:myContext]; 

을하지만 representedObject이 KVC 준수하지 않기 때문에 그 허용하지 않는다.

필요한 것을 쉽게 처리 할 수 ​​있습니까?

+0

나는 NSTreeController의 alignedObjects가 단일 프록시 루트 노드를 반환 했으므로 arranposedObjects.childNodes.representedObject.myProperty가 작동 할 것이라고 생각 했습니까? 몇 개의 최상위 노드가 있더라도 배열 된 nodes.childNodes를 통해 알게 될 것입니다. – stevesliva

+0

사실이긴하지만 그 중 하나도 작동하지 않습니다 – tarmes

답변

0

단순히 "arrangedObjects.myProperty"를 사용하면 효과가 있음이 드러났습니다!

+0

트리의 모든 개체에서 작동합니까? – stevesliva

관련 문제