UIButton в UICollectionViewHeader не работает - PullRequest
0 голосов
/ 04 марта 2019

РЕДАКТИРОВАТЬ: код работает в теле ячейки, но не в заголовке!

Я добавил кнопку программно на мой взгляд.Все правильно отображается.Когда я нажимаю кнопку, она подсвечивается.Проблема в том, что функция не вызывается.У кого-нибудь есть идея решить проблему?

let addPerson : UIButton = {
    let btn = UIButton(type: .system)
    btn.setTitle("Test button", for: .normal)
    btn.setTitleColor(.white, for: .normal)
    btn.backgroundColor = .darkGray
    btn.layer.masksToBounds = true
    btn.addTarget(self, action: #selector(handleAddPerson), for: .touchUpInside)
    btn.translatesAutoresizingMaskIntoConstraints = false
    return btn
}()

@objc func handleAddPerson() {
    print("test")
}


//Following is inside the init
let stackView = UIStackView(arrangedSubviews: [addPerson,addGroup])
    stackView.distribution = .fillEqually
    stackView.translatesAutoresizingMaskIntoConstraints = false
    stackView.spacing = 10
    addSubview(stackView)

    NSLayoutConstraint.activate([
        stackView.topAnchor.constraint(equalTo: topAnchor, constant: 8),
        stackView.bottomAnchor.constraint(equalTo: bottomAnchor, constant: -8),
        stackView.leadingAnchor.constraint(equalTo: leadingAnchor, constant: 8),
        stackView.trailingAnchor.constraint(equalTo: trailingAnchor, constant: -8),
        ])

1 Ответ

0 голосов
/ 04 марта 2019

Попробуйте изменить селектор для этого помощника:

@objc func handleAddPerson(_ sender: UIButton?) {
    print("test")
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...