ios - 如何在 Swift 3.1 中使用 UIImagePickerControllerDelegate 获取目录(本地路径)?

标签 ios iphone swift swift3 uiimagepickercontroller

我将使用委托(delegate)方法从 UIImagepicker 中获取照片目录。但是我不知道该怎么做所以请给我提示这个问题

最佳答案

这一行你可以在 swift 3++ 中获取你的照片的路径:

let imageUrl = info[UIImagePickerControllerReferenceURL] as? NSURL

您可以在委托(delegate)函数中使用它 func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any])

代码:

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

    let image = info[UIImagePickerControllerOriginalImage] as! UIImage
    // get image url
    let imageUrl          = info[UIImagePickerControllerReferenceURL] as? NSURL
    let imageName         = imageUrl?.lastPathComponent
    let documentDirectory = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true).first!
    let photoURL          = NSURL(fileURLWithPath: documentDirectory)
    let localPath         = photoURL.appendingPathComponent(imageName!)

    if !FileManager.default.fileExists(atPath: localPath!.path) {
        do {
            try UIImageJPEGRepresentation(image, 1.0)?.write(to: localPath!)
            print("file saved")
        }catch {
            print("error saving file")
        }
    }
    else {
        print("file already exists")
    }
}

关于ios - 如何在 Swift 3.1 中使用 UIImagePickerControllerDelegate 获取目录(本地路径)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44756114/

相关文章:

ios - 不同类型的 Facebook 开放图谱故事?

iphone - webView 中的简单视频和内存消耗

arrays - 创建一个函数来迭代和循环 Swift 中的数组

ios - 在 TableView 中移动行

jquery - 有没有办法使用桌面浏览器测试我的网站在移动设备上的行为和外观?

ios - 拖动按钮时 ScrollView 不滚动

iphone - 奇怪的 UINavigationController 导航栏行为是否是由于内存泄漏造成的?

iphone - 在 iPhone SDK 4.0 中使用 MPMovieController 的问题

iphone - 核心数据迁移失败,错误为 : Failed to save new store after first pass of migration

ios - 在 iOS 应用内购买中恢复购买