我有一个tableview,我正在尝试从我的服务器下载文件。当用户第一次打开tableview页面并下载文件时一切正常。我可以在tableview单元格中显示进度条值。委托函数我正在更新进度值,然后调用tableView.reloadData()。在第一次一切正常。
但是当我回到上一页时,再次打开tableview然后单击下载按钮我无法更新tableview。 tableView.reloadData()使用正确的数据计数调用numberOfRowsInSection。但不能调用cellForRowAtIndexPath。
此外,我尝试使用以下代码,它也不起作用
DispatchQueue.main.async {
self.tableView.reloadData()
}
当我使用下面的代码时,它会调用cellForRowAtIndexPath函数,但现在更新我的值。 (当我打印单元格值时,它显示正确的值,但现在显示在屏幕上)
let indexPath = IndexPath(row: self.clickSongRowIndex[cellNum], section: 0)
self.tableView.reloadRows(at: [indexPath], with: UITableViewRowAnimation.automatic)