Задать вопрос

Как перезагрузить иконки accessoryType в ячейках UITableViewController?

Подскажите, пожалуйста. В методе cellForRowAt прописал иконку в ячейке со встроенной покупкой.
if indexPath.row == 1 {
            if isPurchase {
                cell.accessoryType = .disclosureIndicator
            } else {
                let iconLockDisclosureIndicator = UIImage(named: "icon_settings.png")
                cell.accessoryView = UIImageView(image: iconLockDisclosureIndicator)
            }
        }


Если юзер не произвел покупку, то в ячейке отображается соответствующая иконка. После успешной покупки иконка должна измениться на стандартную. Как заставить таблицу перезагрузиться и обновить иконки? Метод reloadData() не помогает. Все работает только после перезапуска приложения.
  • Вопрос задан
  • 134 просмотра
Подписаться 2 Оценить Комментировать
Решения вопроса 1
@korolevsky_s Автор вопроса
iOS Developer
Написал такую функцию. запускаю ее в методе с покупкой.
func reloadCell() {
        let indexPath = IndexPath(item: 1, section: 0)
        tableView.cellForRow(at: indexPath)?.accessoryType = .disclosureIndicator
        tableView.reloadRows(at: [indexPath], with: .automatic)
    }
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы