Ваши данные не будут загружены при первом заполнении таблицы. Это работает, когда вы перемещаетесь с использованием вкладок, потому что данные загружены в точке, которую вы возвращаете на вкладку табличного представления, и это вызывает перезагрузку табличного представления.
Предполагая, что ваш источник данных табличного представления использует self.contactsArray
, вам просто нужно позвонить tableview.reloadData()
после присвоения ваших данных self.contactsArray
.
Обязательно сделайте это в главном потоке.
self.contactArray = contactNames
DispatchQueue.main.async {
self.tableView.reloadData()
}