获取Assets.xcassets中的文件夹和文件列表



我有两个问题:

  1. 我正在添加大量的mp3文件到资产。Xcassets,这有什么性能问题吗?

  2. 内资产。xcassets,我创建文件夹&子文件夹,并把mp3文件在这些文件夹。在我的代码中,我想获得这些文件夹名称的列表以及文件夹内的文件列表。这可能吗?

  1. 不,它不会妨碍你的表现。如果您在加载大型或多个文件时遇到问题,请参阅以下内容:是否可以直接将压缩音频文件加载到缓冲区中,而不进行转换?

  2. 获取所有文件夹和子文件夹。

For Obj c:

    NSArray *mainpaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,   NSUserDomainMask, YES);
NSString *documentsDir = [mainpaths objectAtIndex:0];
NSFileManager *Filemanager = [NSFileManager defaultManager];
NSArray *fileList = [Filemanager contentsOfDirectoryAtPath:documentsDir error:nil];
for (NSString *s in fileList){
    NSLog(@"YOu subfolder--%@", s);
}

对于swift:

    let documentsDirectory =  try! NSFileManager().URLForDirectory(.DocumentDirectory, inDomain: .UserDomainMask, appropriateForURL: nil, create: true)
let fileEnumerator = NSFileManager.defaultManager().enumeratorAtURL(documentsDirectory, includingPropertiesForKeys: nil, options: NSDirectoryEnumerationOptions(), errorHandler: nil)
while let file = fileEnumerator?.nextObject() {
   //get all file name here.
}

最新更新