【问题标题】:pick several image in a view from library swift从库中快速选择几个图像
【发布时间】:2016-12-27 19:19:54
【问题描述】:

我开始迅速,我想从 iPhone 库中挑选一些图像到一些 UIImageViews。 我使用了以下代码,但我的问题是每次我选择一个新图像时,它都会放在以前的 UIImageView 上,而不是放在它自己的 UIImageview 中。

let imagePicker = UIImagePickerController()
@IBOutlet var img1: UIImageView!
@IBOutlet var img2: UIImageView!
 @IBAction func addphotofct(sender: UIButton!){



    if (img1.hidden == true){


        imagePicker.allowsEditing = false
        imagePicker.sourceType = .PhotoLibrary

        presentViewController(imagePicker, animated: true, completion: nil)
        img1.hidden = false
        img1.userInteractionEnabled = true



    }else  (img2.hidden == true) {


        imagePicker.allowsEditing = false
        imagePicker.sourceType = .PhotoLibrary

        presentViewController(imagePicker, animated: true, completion: nil)
        img2.hidden = false
        img2.userInteractionEnabled = true

}


override func viewDidLoad() {
    super.viewDidLoad()
imagePicker.delegate = self
 }

func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) {
    if let pickedImage1 = info[UIImagePickerControllerOriginalImage] as? UIImage {
        img1.contentMode = .ScaleAspectFit
        img1.image = pickedImage1
    }

    dismissViewControllerAnimated(true, completion: nil)
    }
    func imagePickerController2(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) {
    if let pickedImage2 = info[UIImagePickerControllerOriginalImage] as? UIImage {
        img2.contentMode = .ScaleAspectFit
        img2.image = pickedImage2
    }

如您所见,我创建了“img1”和“img2”作为 imageView。 当我选择第二张图片时,它会删除 img1 以替换为 img2。 使用我的代码的其余部分,我知道'img2' = 'img2' 所以第二张图像在'img2' 和'img1' 消失了.. 我想要它在我看来.. 我该如何解决?

【问题讨论】:

  • 谢谢,我会尝试使用 ELCImagePickerController。但 xcode 说“使用未解析的标识符“ELCImagePickerController”。我要导入更多的东西吗?
  • 你写的很快吧? ELCImagePickerController 是 obj-C 编写的 cocoapod ,使用 DKImagePickerController 表示 swift 或者你可以使用 Bidging Header 表示 ELCImagePickerController
  • 我在包管理器中找不到它...它会同时选择几张图片,对吧?我只想在我的 viewController 中显示几张图片。

标签: swift uiimagepickercontroller


【解决方案1】:

好的,我专注于代码,并找到了在 view 而不是同时选择多个图像的方法。

我只需要像这样转换我的imagePickController 函数:

func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) {
    if let pickedImage = info[UIImagePickerControllerOriginalImage] as? UIImage {

        if (img1.hidden == true){


            imagePicker.allowsEditing = false
            imagePicker.sourceType = .PhotoLibrary


              img1.hidden = false
             img1.userInteractionEnabled = true
            img1.contentMode = .ScaleAspectFit
            img1.image = pickedImage


        }else if (img2.hidden == true) {


            imagePicker.allowsEditing = false
            imagePicker.sourceType = .PhotoLibrary


            img2.hidden = false
            img2.userInteractionEnabled = true
            img2.contentMode = .ScaleAspectFit
            img2.image = pickedImage

        } else {
            alert("STOP", message:"vous avez atteint la limite de photos possible")
        }


    }

    dismissViewControllerAnimated(true, completion: nil)
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-01-24
    • 1970-01-01
    • 1970-01-01
    • 2016-11-16
    • 1970-01-01
    相关资源
    最近更新 更多