UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "Cell") as! Cell
cell.data = self.fetchedData
return cell
}
// Cell
class Cell: UITableViewCell {
weak var stackView: UIStackView!
weak var someViewInStackView: UIView!
weak var someButton: UIButton! {
didSet {
someButton.addTarget(self, action: #selector(someButtonAction), for: .touchUpInside)
}
}
var data = ViewModel() {
didSet {
// Set data
}
}
@objc func someButtonAction(_ sender: UIButton) {
UIView.animate(withDuration: 0.3, delay: 0, options: .transitionCrossDissolve, animations: {
if self.someViewInStackView!.isHidden {
self.someViewInStackView?.isHidden = false
}
self.stackView.layoutIfNeeded()
})
}
}
Примерно вот так выглядит
Попробуй убрать из сеттера кнопки addTarget и перенести, скажем, в awakeFromNib
Обсуждают сегодня