Swift:无法从文件夹的url获取图像数组?

时间:2016-09-17 03:06:06

标签: ios swift3 ios10 xcode8

好吧,我对url定位过程相当新(我总是只使用显式名称),每个人都是MSMessageStickers的新手。然而。我需要从我已经复制到我的项目中的MessagesExtension目标的图像文件夹(它是starterPack)中提取一个图像网址数组,以用作MSStickers

enter image description here

它可能是Swift 3语法搞砸了这个或其他东西,但我无法找到任何方法来获取该文件夹的正确URL并获取其中的所有图像。以下是成功用PNGS制作具有特定名称的贴纸:

for i in (1..<2) {
                if let url = Bundle.main.url(forResource: "test\(i)", withExtension: "png") {
                    do {
                        //let sticker = try MSSticker(contentsOfFileURL: url, localizedDescription: "")
                        let sticker = try MSSticker(contentsOfFileURL: url, localizedDescription: "")
                        //print("SUCCESS", url)
                        stickers.append(sticker)
                    } catch {
                        print(error)
                    }
                }
        }

我已经从类似的问题How to get array of UIImage, from folder, in Swift?中将以下内容改编为Swift 3:

if let path = NSBundle.mainBundle().resourcePath {

        let imagePath = path + "/images"
        let url = NSURL(fileURLWithPath: imagePath)
        let fileManager = NSFileManager.defaultManager()

        let properties = [NSURLLocalizedNameKey,
                          NSURLCreationDateKey, NSURLLocalizedTypeDescriptionKey]

        do {
            let imageURLs = try fileManager.contentsOfDirectoryAtURL(url, includingPropertiesForKeys: properties, options:NSDirectoryEnumerationOptions.SkipsHiddenFiles)

            print("image URLs: \(imageURLs)")
            // Create image from URL
            var myImage =  UIImage(data: NSData(contentsOfURL: imageURLs[0])!)

        } catch let error1 as NSError {
            print(error1.description)
        }
    }

但是因为文件夹在我的项目文件夹中不是技术上的,而是在您看到的messagesExtension文件夹中,我认为这就是为什么它找不到它。

我需要引入并获取贴纸文件夹中包含的所有图像的网址。我做错了什么?

0 个答案:

没有答案