Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 从动态字典填充NSOutlineView_Objective C_Macos_Nsdictionary_Populate_Nsoutlineview - Fatal编程技术网

Objective c 从动态字典填充NSOutlineView

Objective c 从动态字典填充NSOutlineView,objective-c,macos,nsdictionary,populate,nsoutlineview,Objective C,Macos,Nsdictionary,Populate,Nsoutlineview,在我的应用程序中,我有一个NSOutlineView,它应该显示NSDictionary中的数据。此词典是从服务器获取的,每次获取时可能会非常不同。 它通常有很多子对象,比如其他字典和数组,这些子对象本身常常包含其他字典和数组 我知道如何在数据是静态的情况下填充NSOutlineView,但我很难将其编码为动态数据 当以对象的形式显示数据时,设置列单元格的名称也很困难。 因此,让我们假设在字典中有一个数组存储在“first array”键下。我想用“first array”来命名表示该数组的可扩

在我的应用程序中,我有一个NSOutlineView,它应该显示NSDictionary中的数据。此词典是从服务器获取的,每次获取时可能会非常不同。 它通常有很多子对象,比如其他字典和数组,这些子对象本身常常包含其他字典和数组

我知道如何在数据是静态的情况下填充NSOutlineView,但我很难将其编码为动态数据

当以对象的形式显示数据时,设置列单元格的名称也很困难。 因此,让我们假设在字典中有一个数组存储在“first array”键下。我想用“first array”来命名表示该数组的可扩展单元。但问题是只有项本身被传递到下面的函数中。 我可以遍历字典并搜索对象,然后获取其键,但是如果数组位于某个远子对象中,或者有两个相同的数组,该怎么办

- (id)outlineView:(NSOutlineView *)outlineView objectValueForTableColumn:(NSTableColumn *)theColumn byItem:(id)item
    {

    if ([item isKindOfClass:[NSString class]]) {
         return [NSString stringWithFormat:@"%@",item];
    }

    if ([item isKindOfClass:[NSArray class]]) {
         return ?
    }
    ...
    }
我希望有人对我的过程有一些想法,或者知道我可以在哪里寻求更多的帮助。非常感谢