У меня есть tableView
с каналами для чата. Когда пользователь запускает приложение, мне нужно выбрать первый канал по умолчанию. Сначала я использовал willDisplay
, и это работало, но теперь я решил обновить цвет для непрочитанных каналов (такая функция, как непрочитанные сообщения). Каждый раз, когда я звоню tableView.reloadData()
, выбирается первый канал. selectRow
не работает с willDisplay
по некоторым причинам.
let index = self.tableView.indexPathForSelectedRow
self.tableView.reloadData()
self.tableView.selectRow(at: index, animated: false, scrollPosition: .none)
.
func tableView(_ tableView: UITableView, willDisplay cell: UITableViewCell, forRowAt indexPath: IndexPath) {
if indexPath.row == 0 {
tableView.selectRow(at: indexPath, animated: false, scrollPosition: UITableView.ScrollPosition.none)
}
}
Как выбрать первый канал только 1 раз, когда пользователь запускает приложение?