【问题标题】:How to get filename last photo in Swift 2.0 iOS9?如何在 Swift 2.0 iOS9 中获取文件名最后一张照片?
【发布时间】:2015-08-30 04:42:24
【问题描述】:

我想得到file_name (example = IMG_xxxx.jpg)

func lastphoto() {
   var fetchOptions: PHFetchOptions = PHFetchOptions()
          fetchOptions.sortDescriptors = [NSSortDescriptor(key: "creationDate", ascending: true)]

    var fetchResult = PHAsset.fetchAssetsWithMediaType(PHAssetMediaType.Image, options: fetchOptions)

    if (fetchResult.lastObject != nil) {

        var lastAsset: PHAsset = fetchResult.lastObject as! PHAsset
        let options:PHImageRequestOptions = PHImageRequestOptions()
        options.version = PHImageRequestOptionsVersion.Current

        PHImageManager.defaultManager().requestImageForAsset(lastAsset, 
                        targetSize: self.imageView.bounds.size, 
                        contentMode: PHImageContentMode.AspectFill, 
                        options: PHImageRequestOptions(), 
                        resultHandler: { (result, info) -> Void in
                                self.imageView.image = result
                                let manager = PHImageManager.defaultManager()
                                let assets = PHAsset.fetchAssetsWithMediaType(.Image, options: nil)
                        })


    }
}

【问题讨论】:

    标签: image uiimage filenames photo-gallery


    【解决方案1】:

    从 iOS 9.0 开始,您可以使用以下方式获取原始文件名:

    var filename: String?
    
    if #available(iOS 9.0, *) {
        let resources = PHAssetResource.assetResourcesForAsset(lastAsset)
        if let resource = resources.first {
            filename = resource.originalFilename
        }
    }
    

    如果您支持 iOS 9.0 之前的版本,您还可以尝试使用从 iOS 9.1 开始仍然有效的未记录解决方法:

    filename = lastAsset.valueForKey("filename") as? String
    

    【讨论】:

    • 是否可以更改此文件名或使用自定义文件名保存照片?
    猜你喜欢
    • 2014-03-04
    • 1970-01-01
    • 2015-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-14
    • 2022-10-04
    相关资源
    最近更新 更多