Переопределенный setSelected и setHighlighted не сохраняют выбранный фон, когда прокручиваются вне поля зрения - PullRequest
0 голосов
/ 19 февраля 2019

Мой setSelected для повторного использования UITableViewCell выглядит так (как и мой setHighlighted):

override func setSelected(_ selected: Bool, animated: Bool) {
  if selected {
    backgroundColor = .red
  } else {
    backgroundColor = .white
  }
}

Всякий раз, когда ячейка прокручивается и затем возвращается в вид, цвет фона меняется обратнопо умолчанию белый.Это как если бы ячейка не сохраняла свое выбранное состояние.

1 Ответ

0 голосов
/ 19 февраля 2019

Проблема заключалась в том, что вызывался setSelected, который изменял бы его на правильный цвет фона, если была выбрана ячейка, тогда вызывался бы setHighlighted, и, поскольку моя ячейка не была выделена, она изменяла мою ячейку обратно напо умолчанию белый.

Я просто извлек содержимое из моей реализации setHighlighted, и это решило мою проблему.

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