【问题标题】:How to get the path of an photo in camera roll or just taken ( iOS/Swift )?如何获取相机胶卷或刚刚拍摄的照片的路径(iOS/Swift)?
【发布时间】:2023-03-06 02:39:02
【问题描述】:

这是一个 iOS/Swift 应用程序。我使用相机库 Fusuma 来访问相机、拍照并显示它们。简洁明了。

然后我通过发布照片的路径(我想是在相机胶卷中)将照片上传到服务器的部分。

那我该怎么做呢?我做了一些搜索,在 Swift 中似乎没有明确的答案。

代码如下:

class ReceiptSaveViewController: UIViewController, FusumaDelegate {

...

@IBOutlet weak var photo1: UIImageView!
@IBOutlet weak var photo2: UIImageView!
@IBOutlet weak var photo3: UIImageView!
@IBOutlet weak var photo4: UIImageView!

...

@IBAction func takePhoto(sender: SwiftyButton) {
        // Show Fusuma
        let fusuma = FusumaViewController()

        // fusumaCropImage = false

        fusuma.delegate = self
        self.presentViewController(fusuma, animated: true, completion: nil)
    }

...

// MARK: FusumaDelegate Protocol
    func fusumaImageSelected(image: UIImage) {

        print("Image selected")
        let photos = [photo1, photo2, photo3, photo4]
        //let btns = [btn1,btn2,btn3,btn4]
        for photo in photos {
            if photo.image == nil {
                photo.image = image
                //btns[photo.tag - 1].alpha = 1
                return
            }
        }
    }
...
}

【问题讨论】:

  • 向我们展示您的源代码...
  • 当您拍摄图像时,它不会将物理文件存储到您的手机上,而是存储在您定义的对象中。您必须将其写入并存储到您的手机上。

标签: ios swift ios-camera


【解决方案1】:

我想你可以看到这个链接How can i get original nsdata of uiimage?。它使用我认为已在 swift ios 9 中替换的 ALAssetsLibrary。在此处查看如何在 ios 9 中替换 ALAssetsLibrary How to use PHPhotoLibrary like ALAssetsLibrary ALAssets 被 PHPhotoLibrary(Photo.framework) 替换为 ios 9。

或者你可以使用这个方法查看图片的绝对URLAcquiring absolute image file path using iOS Swift使用FusumaImageSelected代表的图片。

如果我错了,请纠正我。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多