Выбрать фотографию из библиотеки в Swift не работает - PullRequest
0 голосов
/ 30 августа 2018

В моем приложении есть addImgBtn, который должен позволять пользователю выбирать изображение из своих фотографий. также у меня есть "profileImg", которые хранят некоторое временное изображение.

Когда я нажимаю кнопку «addImg», отображаются все фотографии, но когда я нажимаю «Выбрать», временное изображение не заменяется выбранным, вот мой код:

class myClass: UIViewController, UINavigationControllerDelegate, UIImagePickerControllerDelegate {

@IBOutlet weak var profileImg: UIImageView!
@IBOutlet weak var addImgBtn: UIButton!

@IBAction func addImgBtn(_ sender: Any) {
        imagePicker.delegate = self
        imagePicker.sourceType = UIImagePickerControllerSourceType.photoLibrary
        imagePicker.allowsEditing = true
        self.present(imagePicker, animated: true, completion: nil)
}

func imagePickerController(picker: UIImagePickerController!, didFinishPickingImage image: UIImage!, editingInfo: NSDictionary!){
    self.dismiss(animated: true, completion: { () -> Void in

    })

    profileImg.image = image
 }
}

1 Ответ

0 голосов
/ 30 августа 2018

Вы используете неправильный метод imagePickerController, замените его следующим:

 func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {
    self.dismiss(animated: true, completion: { () -> Void in
        if let image = info[UIImagePickerControllerOriginalImage] as? UIImage {
            self.profileImg.image = image
        }
    })
}

Это должно работать! В качестве общего совета, щелкните по команде UIImagePickerControllerDelegate или любому делегату, который вы реализуете в xcode, и он сообщит вам обо всех доступных методах и т. Д.

...