我正在尝试在ALAssetLibray的resultBlock中为UIImage加载图像。 它工作,但有时我在resultBlock中得到了EXC_BAD_ACCESS。我想它是围绕异步问题...现在我无法理解加载图像的最佳方法。我的代码如下。任何人都知道什么是错的。
func loadImage(url: String!) {
let asseturl = URL(string: url)!
self.assetsLibrary.asset(
for: asseturl,
resultBlock: { (asset:ALAsset?) -> Void in
print("ok")
let cgi = asset!.thumbnail()
let img = UIImage(cgImage: cgi!.takeRetainedValue()
self.image = img // EXC_BAD_ACCESS here
},
failureBlock: { (error: Error?) -> Void in
}
)
}