ios - 如何根据下载的图像大小创建动态大小的行高?

标签 ios swift uitableview swift4

我正在尝试根据从 firebase 下载的图像的纵横比在我的 UITableView 中创建动态大小的行高。我在 func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) 设置单元格行高的正确位置在哪里?

最佳答案

  1. 下载图片后重新加载相应的行
  2. tableView:heightForRowAtIndexPath: 中返回一个基于下载图片大小的值

更新

为您的表格维护一个模型对象数组。每个模型对象都应包含对图像的引用。在 cellForRow 中检查相应的模型对象。如果它包含图像,则将其分配给 ImageView 。否则开始下载图像。下载后将图像放入模型对象并重新加载行。

heightForRowAtIndexPath: 中也检查模型对象。如果它不包含图像,则返回一些默认高度。否则返回图像的高度。

至于 rowHeight 属性,它将为表格的每一行设置高度,这肯定不是您需要的

关于ios - 如何根据下载的图像大小创建动态大小的行高?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48251345/

相关文章:

ios - 最新的 firebase 升级后文件 MobileCoreServices-3PK2VQ0R2SYLI.pcm 丢失

swift - 使用通用 where 条件和指定参数类型有什么区别?

ios - 获取 UISearchBar 的 tableView

android - 是否有用于编写 iOS、Android(甚至 Windows Phone)的单一框架?

iphone - 自定义按钮显示在模拟器上,但不显示在iPhone设备中

ios - 使用 react-native 在 IOS 中扫描 GS1 Databar 条形码

ios - 如何从另一个类执行一个类的 collectionView 方法?

jquery - 在移动平台的 HTML/JS Web 应用程序中使用 LaTeX

iphone - 在 UITableView 中使用开关

ios - 由于未捕获的异常 'NSInternalInconsistencyException' 而终止应用程序