我在运行时下载了资源。图像位于“caches”目录中的某个子文件夹中。
当我知道文件的路径时,如何将图像加载到UIImage,图像是“PNG”类型,但它没有扩展名?
我看不到任何UIImage的构造函数,它将文件类型作为参数,所以我认为它可能很棘手
答案 0 :(得分:1)
不,这不是那么难,只需先加载数据。
此处cacheURL
是文件的NSURL
。
NSError *error = nil;
NSData *data = [NSData dataWithContentsOfURL:cacheURL options:NSDataReadingMapped error:&error];
现在您可以检查是否可以加载文件:
if (data) {
image = [UIImage imageWithData:data];
}
代码在Objective-C中,因为我只是从一个旧项目复制,但应该很容易转换为Swift。
答案 1 :(得分:1)
由于您的文件已下载
let path = "theFilePath"
if let data = NSData(contentsOfFile: path) {
let image = UIImage(data: data as Data)
}