Не работает метод addTarget в кастомной кнопке

uikit
swift
ios

#1

Всем привет! Написал свой класс для Button с наследованием от UIButton. Создал кнопку в storyboard и прикрепил ее к своему классу. Хотел ей добавить addTarget, но он не работает, то есть ошибки нет, но нужную мне функцию кнопка не вызывает. Еще я переопределил конструктор, чтобы можно было при создании задать цвет и заголовок, но он тоже не работает(берутся значения из storyboard). Что я сделал не так? Заранее спасибо
Код кнопки:

import UIKit

class SignInButton : UIButton {
    var color: UIColor = .black
    let touchDownAlpha: CGFloat = 0.3
    weak var timer : Timer?
    let timerStep: TimeInterval = 0.01
    @objc let animateTime: TimeInterval = 0.4
    
    override var isHighlighted: Bool {
        didSet {
            if isHighlighted {
                touchDown()
            } else {
                cancelTracking(with: nil)
                touchUp()
            }
        }
    }
    lazy var alphaStep: CGFloat = {
        return (1 - touchDownAlpha) / CGFloat(animateTime / timerStep)
    }()
    
    convenience init(color: UIColor? = nil, title: String? = nil) {
        self.init(type: .custom)
        
        if let color = color {
            self.color = color
        }
        
        if let title = title {
            setTitle(title, for: .normal)
        }
        
        setup()
    }
    
    //Button settings
    func setup() {
        backgroundColor = .clear
        layer.backgroundColor = color.cgColor
        
        layer.cornerRadius = 16
        clipsToBounds = true
    }
    
    override func awakeFromNib() {
        super.awakeFromNib()
        
        if let backgroundColor = backgroundColor {
            color = backgroundColor
        }
        
        setup()
    }
    
    
    func stopTimer() {
        timer?.invalidate()
    }
    
    func touchUp() {
        timer = Timer.scheduledTimer(timeInterval: timerStep, target: self, selector: #selector(animation), userInfo: nil, repeats: true)
    }
    
    @objc func animation() {
        guard let backgroundAlpha = layer.backgroundColor?.alpha else {
            stopTimer()
            return
        }
        
        let newAlpha = backgroundAlpha + alphaStep
        
        if newAlpha < 1 {
            layer.backgroundColor = color.withAlphaComponent(newAlpha).cgColor
        } else {
            layer.backgroundColor = color.cgColor
            stopTimer()
        }
    }
    
    func touchDown() {
        stopTimer()
        
        layer.backgroundColor = color.withAlphaComponent(touchDownAlpha).cgColor
    }
    
    deinit {
        stopTimer()
    }
    
}

Код в viewController

let signInButton = SignInButton(color: UIColor(red:0.00, green:0.87, blue:0.88, alpha:1.0), title: "Вход")

signInButton.addTarget( self , action: #selector (authorizationCheck), for: .touchUpInside)

#2

А этот метод в контролле ты прописал, я так понимаю.