从数据库中获取图像后更新单元格高度

时间:2017-02-03 23:48:26

标签: ios swift uitableview tableviewcell

我试图在异步加载数据库中的图像后更新我的tableview单元格的高度。 用例是: 单元格可见时获取图像。所以我必须在它自己的单元格中调用`loadImageWith(callBack :() - >())。 当我收到callBack时,我想用图像更新特定的单元格。 对于图像,没有占位符等。因此,如果没有可用的图像,则单元格为空。

我试着打电话给 self.tableView.beginUpdates() self.tableView.reloadRows(at: [indexPath], with: UITableViewRowAnimation.fade) self.tableView.endUpdates()
在callBack中,如在其他线程中所描述的那样但显然这会导致无限循环。 在将图像添加到图像视图后,我还尝试调用cell.needsLayout或/和cell.layoutIfNeeded。 对行没有影响。

我没有使用任何第三方库,因为我需要从本地数据库获取图像数据,而不是从服务器获取。

如果我在viewDidLoad中加载所有图片并调用
self.tableView.reloadRows(at: [indexPath], with: UITableViewRowAnimation.fade) ,那么它可以工作,但要求只加载可见单元格。

希望任何人都能解决这个问题。

1 个答案:

答案 0 :(得分:0)

您可以设置上传图片后的单元格高度

<service
    android:name=".MyFirebaseInstanceIDService">
    <intent-filter>
        <action android:name="com.google.firebase.INSTANCE_ID_EVENT"/>
    </intent-filter>
</service>