2016-11-13 111 views
0


我正在与像下面的图片的文件夹的应用程序:
enter image description here
正如你在图中看到,贴纸文件夹中有2子文件夹中的“1”和“2” 。在他们身边是一堆图标,我想加载它在一个集合视图与每个子文件夹是一个不同的贴纸包。欲了解更多详情,请看这张图: enter image description here
那么,我怎样才能得到它在我的项目文件夹?我已阅读关于访问文档目录,但似乎它不能解决我的问题。
请帮帮我。提前致谢。加载图像

+0

您需要从应用程序包中加载图像。如果你可以共享一个示例项目,我可以帮你,否则请从应用程序包搜索加载图像 –

+0

@MidhunMP这很难,因为这是我公司的私人SDK,所以我可以共享我的项目。好难过。 –

回答

1

Filemanager的API。它提供您所需要的一切。

例在路径获取内容:

let pathToDir1 = Bundle.main.resourcePath! + "/Stickers/1"; 
let fileManager = FileManager.default 
let contentOfDir1 = try! fileManager.contentsOfDirectory(atPath: pathToDir1) 

例遍历:

let docsPath = Bundle.main.resourcePath! 
let enumerator = fileManager.enumerator(atPath:docsPath) 
let images = [UIImage]() 
while let path = enumerator?.nextObject() as! String { 
    let contentOfCurDir = try! fileManager.contentsOfDirectory(atPath: path) 
    // do whatever you need. 
} 

详见苹果documentationsample code

+0

作为你的答案,如果我应该为2个子文件夹创建2个路径,然后专门为2个数组? –

+0

在这个例子中,是的。但'FileManager'提供了更多的方法。其他示例已添加。 – shallowThought

0

如果您正在寻找访问项目文件夹中的图片,只需使用图片名称即可。你不需要定义整个路径。

Objective-C的

UIImage *img = [UIImage imageWithName:@"IMAGE_NAME"]; 

迅速

var img = UIImage(named:"IMAGE_NAME") 
+0

我的意思是将所有文件夹加载为数组,然后将其填充到集合视图中。对不起,疑惑的问题。我将编辑我的问题 –