I guess I have trouble because our firebase image is in a collection view cell.
This is what i've tried.
lazy var photoImageView: CustomImageView = {
let iv = CustomImageView()
iv.contentMode = .scaleAspectFit
iv.clipsToBounds = true
iv.isUserInteractionEnabled = true
//iv.addGestureRecognizer(UITapGestureRecognizer(target: self, action: Selector(("changeProfile:"))))
var tap = UITapGestureRecognizer(target: self, action: Selector(("changeProfile:")))
tap.numberOfTapsRequired = 1
iv.addGestureRecognizer(tap)
return iv
}()
@objc func changeProfile(sender: UITapGestureRecognizer) {
print("tapping profile image")
let imagePickerController = UIImagePickerController()
imagePickerController.delegate = self
imagePickerController.allowsEditing = true
present(imagePickerController, animated: true, completion: nil)
}
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {
if let editedImage = info["UIImagePickerControllerEditedImage"] as? UIImage {
photoImageView.setImage(editedImage.withRenderingMode(.alwaysOriginal), for: .normal)
} else if let originalImage = info["UIImagePickerControllerOriginalImage"]
as? UIImage {
photoImageView.setImage(originalImage.withRenderingMode(.alwaysOriginal), for: .normal)
}
photoImageView.layer.cornerRadius = photoImageView.frame.width/2
photoImageView.layer.masksToBounds = true
photoImageView.layer.borderColor = UIColor.green.cgColor
photoImageView.layer.borderWidth = 4
dismiss(animated: true, completion: nil)
}