У меня есть tableView, добавленный в раскадровку, с его источником данных и делегатами, прикрепленными к раскадровке.
У меня есть заголовок раздела табличного представления "Информация о питомце", который отображается в одной из пользовательских ячеек. Как только я приземляюсь на экран, я перезагружаю данные просмотра таблицы.
В течение доли секунды мой экран отображает заголовок раздела (до tableView.reloadData ()).
Как я могу отображать свой tableView только после того, как данные доступны, а не каждый раз, когда пользователь попадает на экран. Я не хочу добавлять экраны вращения / мерцания.
У меня есть переменная hasPetInsurance = false по умолчанию, которая загружается из вызова API, а другая переменная petData - загружается из другого v c.
Теперь мое условие заголовка для отображения: если! HasNoPerInsurance && petData.count> 0, тогда display header -> header отображается в течение доли секунды, потому что все мои условия выполняются до перезагрузки таблицы.
func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
if !hasNoPerInsurance && petData.count {
showPetInfoHeader()
} else {
return nil
}
}
Есть ли другой способ, которым я могу достичь этого?
Пожалуйста, совет