所以,我有一个奇怪的(令人沮丧的)问题。 我正在遍历由图像选择器返回的一系列资产:
let manager = PHImageManager.defaultManager()
let options = PHImageRequestOptions()
for asset in assets {
var image = UIImageView?
manager.requestImageForAsset(asset, targetSize: CGSize(width: asset.pixelWidth, height: asset.pixelHeight), contentMode: .AspectFit, options: option, resultHandler: { (result, info) -> Void in
if result == nil {
print("Nil alert!")
return
}
print("not nil")
image!.image = result
}
}
在控制台中,我收到了预期的消息:
not nil
紧接着是这条消息:
fatal error: unexpectedly found nil while unwrapping an Optional value
我一直在乱搞这几个小时,我似乎无法弄清楚究竟是什么问题。如果我尝试直接打印result
,则会显示<UIImage: 0x12f780a20>, {45, 60}
欢迎任何帮助:)
答案 0 :(得分:0)
在定义之后,您没有向image
设置任何内容,因此这里将nil
:
var image = UIImageView?
当您在此处使用!
强制解包时,您将遇到运行时错误:
image!.image = result