NSTreeController setcontent可以与NSXMLDocument一起使用吗?

时间:2012-01-23 21:50:06

标签: nsoutlineview nstreecontroller nsxmldocument

我正在尝试在outlineview中显示简单plist(xml)文件的内容。

一旦我在NSXMLDocument或NSDictionary中拥有文件数据,是否可以使用这个现有结构来填充TreeController?我可以找到的所有代码示例都解析并重建所有节点和内容。这是不是已经在NSXMLDocument中建立了?

感谢

抢劫

1 个答案:

答案 0 :(得分:4)

绑定使这很容易。

如果使用标准绑定,可以使用NSTreeController和NSOutlineView以及非常少的代码。

要使示例应用程序中的NSXML对象与NSTreeController对象一起使用,您只需通过类别向NSXMLNode类添加几个方法。

https://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/NSXML_Concepts/Articles/UsingTreeControllers.html

#import "NSXMLNode+NSXMLNodeAdditions.h"

@implementation NSXMLNode (NSXMLNodeAdditions)

- (NSString *)displayName {
    NSString *displayName = [self name];
    if (!displayName) {
        displayName = [self stringValue];
    }
    return displayName;
}
- (BOOL)isLeaf {
    return [self kind] == NSXMLTextKind ? YES : NO;
}
@end

这里是NSTreeContoller的相关设置的屏幕截图 enter image description here enter image description here

和NSOutlineView的TableColumn enter image description here

相关问题