更新Xcode Swift [重复]
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了更新Xcode Swift [重复]相关的知识,希望对你有一定的参考价值。
这个问题在这里已有答案:
我只是更新xcode(10.0)更新后我更新以及快速语言版本(4.2)但更新快速语言的中间给我一些错误我真的很困惑如何解决这个问题:
错误:
无法下标类型'[String:Any]'的值,其索引类型为'UIImagePickerController.InfoKey'
@objc(imagePickerController:didFinishPickingMediaWithInfo:) func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo Info: [String: Any]){
let mediatype = Info[UIImagePickerControllerMediaType] as! NSString
if mediatype.isEqual(to: kUTTypeImage as String) {
let imagecopy = Info[UIImagePickerControllerOriginalImage] as! UIImage
profileImage.image = imagecopy
if newpic == true {
UIImageWriteToSavedPhotosAlbum(imagecopy, self, #selector(imageError),nil)
}
}
self.dismiss(animated:true,completion:nil)
onlyUploadImage()
}
错误屏幕截图
有人可以向我解释如何解决这个问题,我试图解决这个问题,但还没有结果。
谢谢
答案
委托功能已更改。现在它是
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any])
您可以从信息词典中获取以下信息
info[UIImagePickerController.InfoKey.mediaType]
和
info[UIImagePickerController.InfoKey.editedImage]
希望这可以帮助。
另一答案
替换你的
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo Info: [String: Any]) {}
同
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]) {}
另一答案
由于Swift 4.2版本的更改,您收到错误。
使用此代码:
func imagePickerController(_ picker: UIImagePickerController,
didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]) {
picker.dismiss(animated: true)
if let originalImage = info[.originalImage] as? UIImage {
print(originalImage)
}
}
func imagePickerControllerDidCancel(_ picker: UIImagePickerController) {
picker.dismiss(animated: true)
}
以上是关于更新Xcode Swift [重复]的主要内容,如果未能解决你的问题,请参考以下文章
Xcode 8 Pod 更新问题-由于主要版本更新而重新创建 CocoaPods [重复]