我正在使用 Xcode 7 和 swift 在我的 iPhone 中运行我的应用程序时出现此错误:
Cannot assign value of type
[String : AnyObject]
to typeUIImage?
func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) {
imgview.image = info
[UIImagePickerControllerOriginalImage]as?UIImage;
dismissViewControllerAnimated(true, completion: nil)
}
最佳答案
问题是您不能在 Swift 中将 []
运算符拆分到单独的一行:方括号需要与被取消引用的字典位于同一行。也不要忘记关闭并释放 picker
。
picker.dismissModalViewControllerAnimated(true)
picker.release()
imgview.image = info[UIImagePickerControllerOriginalImage] as UIImage
由于 Swift 不使用强制分号来分解语句,因此您需要更加注意哪一行的内容。您的代码解释如下:
- 将
info
分配给imgview.image
- 将包含
UIImagePickerControllerOriginalImage
的数组转换为UIImage
显然,这不是您想要获得的效果。将方括号移动到与 info
相同的行将解决此问题。
关于ios - 无法分配类型为“[String : AnyObject],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36960784/