1

我在我的应用程序中使用 Dropbox api。我正在使用此代码在 tableview 控制器的根目录中显示元数据

[self.restClient loadMetadata:@"/" ];
    - (void)restClient:(DBRestClient*)client loadedMetadata:(DBMetadata*)metadata {

        [self.metaArray release];
        self.metaArray = [[NSMutableArray alloc]init ];

        for (DBMetadata *child in metadata.contents) {

            NSString *folderName = [[child.path pathComponents] lastObject];
            [self.metaArray addObject:folderName];
            }

        [self.tableView reloadData];
        [self.activityIndicator stopAnimating];


    }

它将返回:-

Photos
User
Public 

此文件夹可能包含其他文件夹,我正在维护 2 级层次结构,例如

Photo-> xyz.png
User -> Newfolder 

我想问文件夹中可能有文件夹..如何管理层次结构的级别...以及如何通过代码识别其文件夹或文件?

4

1 回答 1

0

在 iOS 中,您通常不会在 App 中显示多个层次的层次结构。从UINavigatorController 类参考

导航界面呈现的屏幕通常模仿数据的层次结构。在层次结构的每个级别,您提供一个适当的屏幕 >(由自定义视图控制器管理)来显示该级别的内容(强调我的)。

如果您仍然想这样做,您将需要获取您的目录并查看它们的数据。顺便说一句,DropBox 也不是很喜欢这个,所以你可能想要缓存那个级别(尽管他们不太热衷于你自己缓存)。要确定某物是否是目录或不查看元数据:

for (DBMetadata* child in metadata.contents) {
    if(child.isDirectory) {
        // Your stuff here...
    }
于 2011-07-04T05:03:41.123 回答