【发布时间】:2017-02-03 23:48:26
【问题描述】:
在从数据库异步加载图像后,我正在尝试更新我的 tableview 单元格的高度。 用例是: 当单元格可见时获取图像。所以我必须在它自己的单元格中调用`loadImageWith(callBack: () -> ())。 当我收到回调时,我想用图像更新特定的单元格。 对于图像,没有占位符等。因此,如果没有可用的图像,则单元格为空。
我已尝试致电 self.tableView.beginUpdates()
self.tableView.reloadRows(at: [indexPath], with: UITableViewRowAnimation.fade)
self.tableView.endUpdates()
在回调中,就像在其他线程中描述的那样,但显然这会导致无限循环。
在将图像添加到图像视图后,我还尝试调用cell.needsLayout 或/和cell.layoutIfNeeded。
对行没有影响。
我没有使用任何第三方库,因为我需要从本地数据库而不是服务器获取图像数据。
如果我在 viewDidLoad 中加载所有图像并调用self.tableView.reloadRows(at: [indexPath], with: UITableViewRowAnimation.fade)
那么它可以工作,但要求只加载可见单元格。
希望大家有解决这个问题的办法。
【问题讨论】:
标签: ios swift uitableview tableviewcell