是否有一个节点类,例如Objective-c中的NSNode或类似节点,或者我应该自己滚动?搜索似乎没有任何结果。
添加/删除节点/子节点等简单的事情
答案 0 :(得分:6)
我认为您正在寻找CFTree
。它没有相应的NS
包装器,但它提供了您正在寻找的操作:添加其他CFTree
实例作为子项,迭代兄弟,将您自己的数据与树节点相关联,等等上。熟悉Core Foundation编程需要一些时间,但通常比滚动自己更好。
答案 1 :(得分:0)
This Objective-C Node class允许通过 Unix路径约定或数组索引约定直观地访问节点,而CFTree仅允许通过via数组索引约定进行访问。使用Unix路径约定的好处允许人类可读的节点命名,其行为很像通过路径名对节点进行字典键访问。
Node还具有符号链接,使您能够创建指向节点结构深处的节点分支的节点。链接可以通过它们创建,复制,重命名,移动和删除节点。
以下是Node类原语方法的示例:
- (id)initRoot
- (id)makeNodeAtPath:(NSString*)atPath
- (void)deleteNodeAtPath:(NSString*)atPath
- (void)copyNodeAtPath:(NSString*)atPath toPath:(NSString*)toPath
- (void)moveNodeAtPath:(NSString*)atPath toPath:(NSString*)toPath
- (void)renameNodeAtPath:(NSString*)atPath toPath:(NSString*)toPath
- (void)linkNodeAtPath:(NSString*)atPath toPath:(NSString*)toPath
- (id)nodeAtPath:(NSString*)atPath
- (NSString*)path
- (NSMutableArray*)allNodes