Что случилось,
Итак, это мой код для выбора изображения из библиотеки фотографий, теперь я хочу go отправить пользователя следующему контроллеру представления, но только после того, как пользователь выберет изображение. мой вопрос:
Как мне сделать это go для следующего контроллера представления, но только после того, как изображение было выбрано из библиотеки фотографий?
Сделав это так, чтобы * Кнопка 1013 * отображается только после того, как пользователь выбрал изображение или просто показывает ошибку, если он пытается нажать кнопку «Готово», пока изображение не будет выбрано из библиотеки.
Спасибо !!!!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
let imageTap = UITapGestureRecognizer(target: self, action: #selector(openImagePicker))
ProfilePictureImageView.isUserInteractionEnabled = true
ProfilePictureImageView.addGestureRecognizer(imageTap)
ProfilePictureImageView.layer.cornerRadius = ProfilePictureImageView.bounds.height / 2
ProfilePictureImageView.clipsToBounds = true
TapToChangeButton.addTarget(self, action: #selector(openImagePicker), for: .touchUpInside)
//when user clicks they can choose a photo from library
//instantiate image picker
ImagePicker = UIImagePickerController()
ImagePicker.allowsEditing = true
ImagePicker.sourceType = .photoLibrary
ImagePicker.delegate = self
setUpElements()
}
func setUpElements() {
ErrorLabel.alpha = 0
}
// taping to change and add a photo
@objc func openImagePicker(_ sender:Any) {
// Open Image Picker
self.present(ImagePicker, animated: true, completion: nil)
}
@IBAction func FinishTapped(_ sender: Any) {
}
}
//extend the proper delagate method
extension BackroundCheckViewController: UIImagePickerControllerDelegate, UINavigationControllerDelegate {
//cancel
func imagePickerControllerDidCancel(_ picker: UIImagePickerController) {
picker.dismiss(animated: true, completion: nil)
}
//pick an image
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]) {
//get the image the selected
if let pickedImage = info[UIImagePickerController.InfoKey.editedImage] as? UIImage {
self.ProfilePictureImageView.image = pickedImage
//upload to firbase
PhotoService.savePhoto(image: pickedImage)
}
picker.dismiss(animated: true, completion: nil)
}
}