В своем классе ячейки tableView я использую метод didSet для настройки значений пользовательского интерфейса, и там у меня есть массив строк из API, который я использую для создания массива кнопок и добавления его в UIStackView
var pollDataInPollCell: PollModel? {
didSet{
if let pollOptions = pollDataInPollCell?.poll_detail {
//sample pollOptions = ["Button1","Button2","Button3","Button4"]
for index in pollOptions {
let bt = UIButton(type: .system)
bt.setTitleColor(.blue, for: .normal)
bt.setTitle(index, for: .normal)
optionBtnStackView.addArrangedSubview(bt)
}
}
}
}
мой stackView вне didSet
var optionBtnStackView: UIStackView = {
let sv = UIStackView()
sv.axis = .vertical
sv.distribution = .fillEqually
sv.spacing = 5
return sv
}()
все отлично работает при запуске, однако, когда я прокручиваю вверх и вниз, мой стек просмотра добавляет еще 4 кнопки.Он имеет 4 при запуске, затем 8, а затем 12 и продолжает увеличиваться на 4 всякий раз, когда я прокручиваю свое приложение вверх и вниз.Я знаю, что проблема от tableView dequeueReusableCell, но я не мог найти способ исправить эту проблему.Какие-либо предложения?Спасибо.