Не уверен, что я что-то пропустил в вашем коде, но вам нужно добавить какое-то действие к изображению, включив userInteractionEnabled
, чтобы он не распознавал нажатия на элемент и что делать, когда это происходит.Вам нужно добавить UITapGestureRecogniser
к UIImageView
let fieldIcon = UIImageView(image: UIImage(asset: Asset.calendar))
field.addSubview(fieldIcon)
fieldIcon.isUserInteractionEnabled = true // doesn't work
let fieldIcon = UIImageView(image: UIImage(asset: Asset.calendar))
field.addSubview(fieldIcon)
let tapGesture = UITapGestureRecognizer(target: self, action: #selector(calenderIconTapped))
fieldIcon.addGestureRecognisor(tapGesture)
func calenderIconTapped() {
// show the picker
}
ОБНОВЛЕНИЕ:
Перечитав ваш вопрос, я понимаю, что вы пытаетесь сделать сейчас.Если вы хотите, чтобы какие-либо касания на изображении проходили до UITextField
внизу, вам нужно сделать то, что вы пытались сделать наоборот ... вам нужно установить userInteractionEnabled
в false
на UIImageView
fieldIcon.isUserInteractionEnabled = false