如何将图像保存到具有来自先前视图控制器的 id 的单独相册中
Posted
技术标签:
【中文标题】如何将图像保存到具有来自先前视图控制器的 id 的单独相册中【英文标题】:How to save images into a separate album with an id from previous view controller 【发布时间】:2017-07-04 16:14:22 【问题描述】:每次拍摄图像时,我都会尝试将从相机拍摄的图像保存到单独的相册中。现在使用我编写的代码将图像保存但保存到共享相册中,它没有保存到我希望保存的文件夹中,而是创建了文件夹。此外,我希望每次使用专辑名称为“LiQu”拍摄图像时创建一个新文件夹,但我需要它在从前一个视图控制器获取的文件夹旁边有一个 ID 号。 我已经上传了我对代码的尝试。
我正在尝试创建目录并将图像保存到的视图控制器。
import UIKit
import Photos
let albumName = "LiQu" // "+ID" i want to add the ID number from the previous view controller which is entered by the user
var transferImage: UIImage?
//var redlineX: Double = 0
class ViewController: UIViewController, UIImagePickerControllerDelegate, UINavigationControllerDelegate
var albumFound : Bool = false
var assetCollection: PHAssetCollection!
var photosAsset: PHFetchResult<AnyObject>!
override func viewDidLoad()
super.viewDidLoad()
self.view.backgroundColor = UIColor.init(red: 0.32, green: 0.667, blue: 0.754, alpha: 1)
//Check if LiQu album exists
let fetchOptions = PHFetchOptions()
fetchOptions.predicate = NSPredicate(format: "title = %@", albumName)
let collection = PHAssetCollection.fetchAssetCollections(with: .album, subtype: .any, options: fetchOptions)
if (collection.firstObject != nil)
// found the album
self.albumFound = true
self.assetCollection = collection.firstObject!
else
// create the album
phphotoLibrary.shared().performChanges(
//let request = PHAssetCollectionChangeRequest.creationRequestForAssetCollection(withTitle: albumName)
PHAssetCollectionChangeRequest.creationRequestForAssetCollection(withTitle: albumName)
)
视图控制器,我想使用输入的“ID”作为上面代码中的目录名称。
import UIKit
class FormViewController: UIViewController
@IBOutlet weak var ID: UITextField!
@IBOutlet weak var organdonationno: UITextField!
@IBOutlet weak var donorage: UITextField!
@IBOutlet weak var snodname: UITextField!
@IBOutlet weak var donorshospital: UITextField!
@IBOutlet weak var date: UITextField!
我希望这是有道理的,并且非常感谢提供的任何帮助,我是这方面的新手,所以如果我犯了任何错误,请多多包涵。
谢谢你
【问题讨论】:
@luckyShubhra 这是我的问题。如果你能帮忙就太好了!谢谢你 对迟到的回复表示歉意。我怎么错过了你的问题。我已经添加了答案。如果您有任何进一步的疑问,请告诉我。 【参考方案1】:您可以将 ID 从 FormViewController 传递给 ViewController,并在创建相册时将 id 附加到您的相册名称。在 ViewController 中定义 id 为
var id : String = ""
将 id 从 FormViewController 传递给您的 ViewController
let myVC = storyboard?.instantiateViewControllerWithIdentifier("ViewController ") as! ViewController
myVC.id= ID!
navigationController?.pushViewController(myVC, animated: true)
在创建新专辑之前将 id 附加到专辑名称以将图像另存为。
albumName += id.
您可以参考this 链接以帮助将图像保存到 PHAssest 中的自定义相册。
【讨论】:
以上是关于如何将图像保存到具有来自先前视图控制器的 id 的单独相册中的主要内容,如果未能解决你的问题,请参考以下文章