У меня есть функция для получения данных из веб-службы, мои функции загрузки данных и помещения в базу данных, когда я вызываю self.tableView.reloadData()
Я беру объекты из базы данных и обновляю список, но метод reloadData()
не вызывается.
Я тоже пробовал звонить: self.tableViewItens.performSelector(onMainThread: #selector(UICollectionView.reloadData), with: nil, waitUntilDone: true)
Кроме того, я попытался поместить self.tableViewItens.reloadData()
вне закрытия завершения, тоже не работает.
действие UITabBarButton:
@objc func refreshButton() {
Sync.syncData(tabela: "my_table", successBlock: { (n) in
print("Refreshed: \(n)")
DispatchQueue.main.async {
self.tableViewItens.reloadData()
}
}) { (err) in
print(err)
}
}
Метод не вызван:
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
print("cellForRowAt")
return UITableViewCell()
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return listaDados.count
}
viewDidLoad
override func viewDidLoad() {
self.alerta = Alerta()
self.rightButton = UIBarButtonItem(barButtonSystemItem: .refresh, target: self, action: #selector(refreshButton))
self.navigationItem.rightBarButtonItem = self.rightButton
self.title = titlePage!
self.tableViewItens.delegate = self
self.tableViewItens.dataSource = self
}
Я не ставлю код Sync.syncData()
, потому что это работает, единственное, что не работает, это reloadData()
табличного представления.