我正在开发一个无需使用IOS客户端即可发送邮件的应用程序。 我决定使用mailcore2异步api。 现在,我能够发送电子邮件,但我想向其添加附件,而我实际上是想单击按钮,打开图库,选择图片并获取其路径。 我正在尝试这段代码,但是我的“
出现在第 2 和 7 行中让imageURL
和
让图片
”:
”无法用类型“ [NSObject:AnyObject]”下标 'UIImagePickerController.InfoKey'类型的索引
这是代码:
func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [NSObject : AnyObject]) {
let imageURL = info[UIImagePickerController.InfoKey.referenceURL] as NSURL
let imageName = imageURL.path!.lastPathComponent
let documentDirectory = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true).first as! String
let localPath = documentDirectory.stringByAppendingPathComponent(imageName)
let image = info[UIImagePickerController.InfoKey.originalImage] as UIImage
let data = UIImagePNGRepresentation(image)
data.writeToFile(localPath, atomically: true)
let imageData = NSData(contentsOfFile: localPath)!
let photoURL = NSURL(fileURLWithPath: localPath)
let imageWithData = UIImage(data: imageData)!
picker.dismiss(animated: true, completion: nil)
}
答案 0 :(得分:0)
您使用的是较早版本的Swift,以获取图片网址:
let imageURL = info[UIImagePickerControllerReferenceURL] as NSURL
我建议您将来升级到Swift 5.0