Swift 使用Alamofire从API获取响应
我使用Alamofire从API获取响应,将数据加载到TableView中,但是我的Alamofire函数可以工作,但仅在某些视图控制器中,我不明白我做错了什么。我知道它是alamofire函数,因为我使用了调试器来跟踪我的数据和代码,但我看到了一个问题,即函数永远不会位于函数的第一行之前 阿拉莫菲尔函数Swift 使用Alamofire从API获取响应,swift,uitableview,alamofire,Swift,Uitableview,Alamofire,我使用Alamofire从API获取响应,将数据加载到TableView中,但是我的Alamofire函数可以工作,但仅在某些视图控制器中,我不明白我做错了什么。我知道它是alamofire函数,因为我使用了调试器来跟踪我的数据和代码,但我看到了一个问题,即函数永远不会位于函数的第一行之前 阿拉莫菲尔函数 Alamofire.request("\(baseURL)").responseJSON { response in if let dict = response.re
Alamofire.request("\(baseURL)").responseJSON { response in
if let dict = response.result.value as? [[String: Any]] {
for obj in dict {
let latest = LatestNews(getLatest: obj)
self.moreNews.append(latest)
}
}
self.tableView.reloadData()
}
阵列和模型类
var latestNews: LatestNews!
var moreNews = [LatestNews]()
“它在某些视图控制器中工作,但在其他视图控制器中不工作”,这是因为您正在后台线程上重新加载tableView。您必须将其移动到主线程,如下所示:
DispatchQueue.main.async {
self.tableView.reloadData()
}