При изменении изображения с помощью UIImagePickerController изображение меняется, а приложение возвращается на предыдущую страницу? - PullRequest
0 голосов
/ 04 декабря 2018

Я борюсь с изменением картинки профиля на xcode.Мне удалось заставить приложение изменить UIImageView с фотографией из библиотеки фотографий на IOS, однако, когда я выбираю изображение, оно меняется, а затем возвращается назад UIViewController / предыдущий вид.

Я не уверен, почему он делает этои где я ошибся в коде?кто-то может помочь?

import UIKit

class ProfileScreenVC: UIViewController, UINavigationControllerDelegate, UIImagePickerControllerDelegate {


    @IBOutlet var imgProfilePic: UIImageView!

    @IBAction func ChangeProfile(_ sender: AnyObject)
    {
        let PPimage = UIImagePickerController()
        PPimage.delegate = self
        PPimage.sourceType = UIImagePickerController.SourceType.photoLibrary
        PPimage.allowsEditing = false
        self.present(PPimage, animated: true)
        {
            // After it is complete
        }
    }

    func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any])
        {
            if let PPimage = info [UIImagePickerController.InfoKey.originalImage] as? UIImage
            {
            imgProfilePic.image = PPimage
            }else{
                //Error Message
            }

            self.dismiss(animated: true, completion: nil)
        }

    override func viewDidLoad() {
        super.viewDidLoad()

        // Make image circular
        imgProfilePic.roundedImages()

        // Do any additional setup after loading the view.
    }


}

Я также получаю эту ошибку / вывод, когда это происходит тоже.

ошибки, обнаруженные при обнаружении расширений: Ошибка Domain = PlugInKit Code = 13 "запрос отменен" UserInfo ={NSLocalizedDescription = запрос отменен}

1 Ответ

0 голосов
/ 04 декабря 2018

Вместо отклонения вашего UIViewController отклонения просто UIImagePickerController (в этом случае вы можете использовать один из параметров метода: picker)

picker.dismiss(animated: true, completion: nil)
...