#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
Удалите эту строку в своем коде.