ios - 表视图不从数据库重新加载数据
问题描述
我试图在视图加载和视图出现时重新加载我的表格视图。我正在从数据库中提取数据,所以我认为我的问题与速度有关。这个函数在我的视图中调用确实加载并且视图确实出现了,我尝试tableView.reloadData()
在不同的地方调用,但它不会在加载视图时加载带有值的表视图。但是,当点击博客按钮时,表格视图会填充。
func articleRefresh(){
DataService.instance.getAllArticles { (returnedArticlesArray) in
self.blogArray.removeAll()
self.newsArray.removeAll()
self.rosterArray.removeAll()
self.draftArray.removeAll()
self.articleArray.removeAll()
for article in returnedArticlesArray {
if article.category == "blog" {
self.blogArray.append(article)
}
else if article.category == "news" {
self.newsArray.append(article)
}
else if article.category == "roster" {
self.rosterArray.append(article)
}
else if article.category == "draft" {
self.draftArray.append(article)
} else {
self.blogArray.append(article)
}
}
self.newsArray.reverse()
self.rosterArray.reverse()
self.draftArray.reverse()
}
}
@IBAction func BlogPressed(_ sender: Any) {
articleArray.removeAll()
self.articleArray = self.blogArray
tableView.reloadData()
}
解决方案
您可以使用异步调度队列,可能是它的工作。之后你的数据就会放在哪里。
DispatchQueue.main.async {
self.tblHome.reloadData()
}