检查nil是否为非可选var

时间:2015-05-16 19:05:55

标签: ios swift

当我尝试将图片保存到相册时,我想异步检查一切都很顺利。所以我正在使用

tbb::parallel_reduce

我的回调函数看起来像

UIImageWriteToSavedPhotosAlbum(halfFinalPic, self, Selector("image:didFinishSavingWithError:contextInfo:"), nil);

但我真的不懂如何处理我的错误对象。 我无法检查它是否为零,因为它不是一个潜在客户,所以我怎么能弄清楚是否发生了错误?

1 个答案:

答案 0 :(得分:4)

UIKit Function Reference仅记录Objective-C表单 回调,是

- (void)image:(UIImage *)image didFinishSavingWithError:(NSError *)error contextInfo:(void *)contextInfo;

此方法的Swift视图是

func image(image: UIImage!, didFinishSavingWithError error: NSError!, contextInfo: UnsafeMutablePointer<Void>)

其中imageerror是隐式解包的选项。 所以error可以是nil,这在我的测试中有效:

func image(image: UIImage!, didFinishSavingWithError error: NSError!, contextInfo: UnsafeMutablePointer<Void>)
{
    if error != nil {
        println(error)
    } else {
        println("success")
    }
}