Ячейка выбирается между cellForRowAt и willDisplay? - PullRequest
0 голосов
/ 02 февраля 2020
override func tableView(_ tableView: UITableView, willDisplay cell: UITableViewCell, forRowAt indexPath: IndexPath) {
        if specialIndex?.compare(indexPath) == ComparisonResult.orderedSame {
            print("will display \(cell.selectionStyle.rawValue)")
            print("selected: \(cell.isSelected) \(cell.isHighlighted)")
            cell.isSelected = false           
            print("selected: \(cell.isSelected) \(cell.isHighlighted)")
        }
    }

Из метода willDisplay видно, что для ячейки устанавливается значение «Выбрано» до ее отображения.

Но я проверяю значения в cellForRow, и это действительно не выбрано

Итак, где-то между cellForRow и willDisplay, ОС устанавливает мою ячейку как выбранную, когда я прокручиваю представление таблицы

Даже когда я выбрал значение false в Будет отображаться, выбор будет отображаться в течение доли секунды.

Как это исправить?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...