2015-07-12 118 views
2

我有这段代码,我有一个问题,试图获取图像路径:( 我在谷歌和堆栈搜索流,但解决方案,我发现是在Objective-C或代码,不会迅速再工作:( 所以这是我的代码:如何从swift中的图片库中获取图片或电影路径

@IBAction func chooseWaterMark(sender: AnyObject) { 
    var photoPicker = UIImagePickerController() 
    photoPicker.delegate = self 
    photoPicker.sourceType = .PhotoLibrary 
    presentViewController(photoPicker, animated: true, completion: nil) 

} 

func imagePickerController(picker: UIImagePickerController, didFinishPickingImage image: UIImage!, editingInfo: [NSObject : AnyObject]!) { 
    waterMark.image = image 
    waterMarkAlpha.image = image 
    waterMarkAlpha.alpha = CGFloat(0.5) 
    dismissViewControllerAnimated(false, completion: nil) 


} 
+0

欢迎来到SO,我建议您尽可能地显示合适的代码(包括完全符合您的其他语言的代码)并投票回答以鼓励他人回答您的问题。只是想放弃一个说明,几乎所有的objc解决方案都可以重新输入为Swift。 –

回答

2

此代码可以帮助你:

func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [NSObject : AnyObject]) { 
    let imageURL = info[UIImagePickerControllerReferenceURL] as NSURL 
    let imageName = imageURL.path!.lastPathComponent 
    let documentDirectory = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true).first as String 
    let localPath = documentDirectory.stringByAppendingPathComponent(imageName) 

    let image = info[UIImagePickerControllerOriginalImage] as UIImage 
    let data = UIImagePNGRepresentation(image) 
    data.writeToFile(localPath, atomically: true) 

    let imageData = NSData(contentsOfFile: localPath)! 
    let photoURL = NSURL(fileURLWithPath: localPath) 
    let imageWithData = UIImage(data: imageData)! 

    picker.dismissViewControllerAnimated(true, completion: nil) 
} 

有了这个代码,您可以保存图片到指定的目录。希望它能帮到您。

+0

UIImagePickerControllerReferenceURL是零 –

+0

我已经将图像存储到一个数组中如何使用此方法? –

+0

你可以看看我的问题吗? https://stackoverflow.com/q/45842393/755621 我不知道它将如何与我的情况。任何帮助将非常感激! – iUser

相关问题