Не удается нажать кнопку в UITableViewCell после обновления iOS 15

#ios #swift

Вопрос:

У меня есть UITableView, который быстро обновляет данные, и в ячейке UITableViewCell есть кнопка. С iOS 11 по 14 он работает отлично, но после обновления iOS15 кнопка сломана.

  • Кажется, что он неприкасаем, пока ячейка обновляется. Итак, я не могу коснуться кнопки
  • Ему нужно много раз прикасаться к нему, чтобы сработало действие кнопки
  • Когда он выстрелил, некоторое время является огнем в качестве другого контекста ячейки. Например: я нажимаю кнопку на ячейке 1, она должна отправить отправителя из ячейки 1 ответчику, но вместо этого она отправляет отправителя из ячейки 2

Кнопка была встроена как

    cell.contentView.isUserInteractionEnabled = true
   cell.button.addTarget(self, action: #selector(self.doSomething(sender:)), for: .touchUpInside)
 

У кого-нибудь есть для меня какое-нибудь предложение? Спасибо

ОБНОВЛЕНИЕ Я нашел решение использовать перенастройку вместо загрузки данных для UITableView

     let indexPaths = tableView.indexPathsForVisibleRows!
    if !indexPaths.isEmpty {
        tableView.reconfigureRows(at: indexPaths)
    }

 

Комментарии:

1. На ваш вопрос невозможно ответить без каких-либо подробностей о том, как кнопка встроена в ячейку UITableViewCell и как обрабатывается событие касания.

2. Кроме того, проверьте опечатки и грамматические ошибки. Sine iOS 11? Вы говорите о тригонометрии?

Ответ №1:

cell.contentView.isUserInteractionEnabled = true

Удалите эту строку в своем коде.