本文介绍了允许编辑UIImagePickerViewController不能工作挑选2个不同的图像的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个带有2 UIImageViews 的视图和2个按钮,以便用 UIImagePickerViewController 选择2个不同的图片。它实际上是完美的,但我想缩放图像,最后在 UIImageViews 中显示图像的选定部分。

I have a view with 2 UIImageViews and 2 buttons in order to select 2 different pictures with UIImagePickerViewController. It actually works perfect but I would like to zoom the images and finally show the selected part of the image in the UIImageViews.

允许编辑在缩放时正常工作,显然允许编辑图片,但最终选定的部分不会出现在UIImageViews中。

Allows editing works correctly with zoom and it apparently ''allows to edit' the pictures, but in the end the selected part is not presented in the UIImageViews .

代码在这里。有什么问题?

Code is here. What is wrong?

import UIKit

var fotoUnoEscogida = UIImage()
var fotoDosEscogida = UIImage()


class viewControllerDso : UIViewController, UIImagePickerControllerDelegate ,UINavigationControllerDelegate, UITextViewDelegate{


    //Images
    @IBOutlet weak var imageView1: UIImageView!
    @IBOutlet weak var imageView2: UIImageView!
    //TextViews
    @IBOutlet weak var textViewExteriorUno: UITextView!
    @IBOutlet weak var textViewExteriorDos: UITextView!
    @IBOutlet weak var textViewInteriorUno: UITextView!
    @IBOutlet weak var textViewInteriorDos: UITextView!




    var imagePicker = UIImagePickerController()
    var imagePicked = 0

    override func viewDidLoad() {
        super.viewDidLoad()



    }


    @IBAction func chooseImage(sender: UIButton) {
        if UIImagePickerController.isSourceTypeAvailable(UIImagePickerControllerSourceType.SavedPhotosAlbum){
            print("chooseImage Button capture ")

            imagePicked = sender.tag
            imagePicker.delegate = self
            imagePicker.sourceType = .SavedPhotosAlbum
            imagePicker.allowsEditing = true

            self.presentViewController(imagePicker, animated: true, completion: nil)
        }
    }
    func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) {
        let pickedImage = info[UIImagePickerControllerOriginalImage] as? UIImage

        if imagePicked == 1 {

            imageView1.contentMode = UIViewContentMode.ScaleAspectFill
            imageView1.image = pickedImage

            imageView1.layer.masksToBounds = true
            imageView1.layer.borderWidth = 6
            imageView1.layer.cornerRadius = imageView1.layer.frame.height/6
            imageView1.layer.borderColor = UIColor.purpleColor().colorWithAlphaComponent(0.2).CGColor




        } else if imagePicked == 2 {


            imageView2.contentMode = UIViewContentMode.ScaleAspectFill
            imageView2.image = pickedImage

            imageView2.layer.masksToBounds = true
            imageView2.layer.borderWidth = 6
            imageView2.layer.cornerRadius = imageView2.layer.frame.height/6
            imageView2.layer.borderColor = UIColor.purpleColor().colorWithAlphaComponent(0.2).CGColor




        }
        dismissViewControllerAnimated(true, completion: nil)
    }


}


推荐答案

didFinishPickingMediaWithInfo
而不是

let pickedImage = info[UIImagePickerControllerOriginalImage] as? UIImage

使用

let pickedImage = info[UIImagePickerControllerEditedImage] as? UIImage

这篇关于允许编辑UIImagePickerViewController不能工作挑选2个不同的图像的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

11-01 22:56