在我的项目中,我使用Cloudinary,而我在Xcode 7.3中使用以下函数它工作正常但是在Xcode 8中我得到了错误。
(无法将类型的值([AnyHashable:Any]!,String!,Int!,AnyObject) - >()转换为预期的参数类型(CLUploaderCompletion)。
如何解决此错误。
uploader.upload(forUpload, options: nil, withCompletion:onCloudinaryCompletion, andProgress:onCloudinaryProgress)
func onCloudinaryCompletion(_ successResult:[AnyHashable: Any]!, errorResult:String!, code:Int, idContext:AnyObject!) {
print("successResult\(successResult)")
}
func onCloudinaryProgress(_ bytesWritten:Int, totalBytesWritten:Int, totalBytesExpectedToWrite:Int, idContext:AnyObject!) {
print("onCloudinaryProgress")
}
错误的屏幕截图:
答案 0 :(得分:0)
在swift 3中,有些内容发生了变化,其中一个原因是来自客观c的id
现在是Any
,而不是AnyObject
。将您的idContext
更改为Any
。
此外,您还必须将字典类型和字符串更改为可选字符串。因此它变为String?
和[AnyHashable: Any]?
。