UITapGestureRecognizer не прикрепляет действие

Я пытаюсь добавить UITapGestureRecognizer к UIImage. Но когда я запускаю проект - ничего не происходит.

В чем может быть проблема?

Вот мой код:

Controller:

import UIKit

class ViewController: UIViewController, APOTDViewDelegate {
    
    let av = APOTDView()
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        av.delegate = self
        
        addSubviews()
        setupConstraint()
    }
    
    func addSubviews() {
        // ...
    }
    
    func setupConstraint() {
        // ...
    }
    
    @objc func viewDidTapImage() {
        print("good job")
    }
    
}

View:

import UIKit

protocol APOTDViewDelegate: AnyObject {
    func viewDidTapImage()
}

class APOTDView: UIView {
    
    weak var delegate: APOTDViewDelegate?
    
    var imageView: UIImageView = {
        let imageView = UIImageView()

        imageView.backgroundColor = .red
        
        imageView.translatesAutoresizingMaskIntoConstraints = false
        imageView.isUserInteractionEnabled = true
        let tap = UITapGestureRecognizer(target: self, action: #selector(imageTapped))
        imageView.addGestureRecognizer(tap)
        
        return imageView
    }()
    
    @objc func imageTapped() {
        delegate?.viewDidTapImage()
    }
    
}

Ответы (1 шт):

Автор решения: Oleg Soloviev

Замените var imageView: UIImageView = { на lazy var imageView: UIImageView = {

→ Ссылка