gpt4 book ai didi

swift - 尝试使用照片框架 [Swift 2.0] 从 imagepickercontroller 检索 NSURL

转载 作者:行者123 更新时间:2023-11-28 08:36:01 29 4
gpt4 key购买 nike

当用户使用 Photos Framework 通过 imagepickercontroller 选择图像或视频时,我试图从图像或视频中获取 NSURL

import Photos

func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) {

let url: NSURL = (info["UIImagePickerControllerReferenceURL"] as! NSURL)
mediaUploadView.image = info[UIImagePickerControllerOriginalImage]as? UIImage

print(url)
self.dismissViewControllerAnimated(true, completion: nil)
return UIImagePickerControllerReferenceURL
}

我收到错误“void 函数中出现意外的非 void 返回值”。

最终目标是使用 NSURL 将图像/视频/gif 上传到 Firebase 数据库。

老实说,我不确定我的逻辑是否正确,我对编码还是个新手。非常感谢任何帮助!

最佳答案

在 swift 中,你必须在函数末尾的开头“{”之前说出返回值是什么,如果你不这样做,那么它被认为是一个 void 函数。 void 函数意味着它不返回任何值。所以,要告诉它它将返回一个 NSURL,试试这个:

import Photos

func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) -> NSURL {

let url: NSURL = (info[UIImagePickerControllerReferenceURL] as! NSURL)
mediaUploadView.image = info[UIImagePickerControllerOriginalImage]as? UIImage

print(url)
self.dismissViewControllerAnimated(true, completion: nil)
return url

只需复制粘贴即可,唯一的区别是它告诉函数返回值是什么,并且不再返回那个错误。我还建议删除

周围的“”
(info[UIImagePickerControllerReferenceURL] as! NSURL)

这将返回一个 NSURL。

关于swift - 尝试使用照片框架 [Swift 2.0] 从 imagepickercontroller 检索 NSURL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37666564/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com