从服务器加载图像时的动态单元格

Posted

技术标签:

【中文标题】从服务器加载图像时的动态单元格【英文标题】:dynamic cell when load image from server 【发布时间】:2018-07-11 10:03:55 【问题描述】:

我在 viewController 上实现了一个 tableView,在这个 tableview 中我有一个单元格,我希望它使其成为动态单元格,我有一个用于用户配置文件的 imageView 和一个用于文本的标签,以及 messageImage 如果用户发送图片我成功制作动态文本单元格,但不在图像中!谁能帮我解决这个问题

【问题讨论】:

【参考方案1】:

您不必担心图像大小,因为有很多 图片大小可以。如果您将图像设置为其实际大小,它将使 用户界面非常糟糕。

所以最好的就是 -

1. 设置图像视图大小,如(100 x 100)(200 x 200),使其固定或根据设备屏幕大小。

2.然后在.scaleAspectFit模式下设置图片视图中的图片

我认为这会解决您的问题。

【讨论】:

【参考方案2】:

希望你同时使用 UITableViewDelegate 的以下两种委托方法

func tableView(_ tableView: UITableView, estimatedHeightForRowAt indexPath: IndexPath) -> CGFloat 
    return <SomeAppropriateValue>

func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat 
    return UITableViewAutomaticDimension

UITableViewAutomaticDimension 应该可以解决您的问题。

【讨论】:

我把它放在 viewDidload() tableView.estimatedRowHeight = 542 tableView.rowHeight = UITableViewAutomaticDimension 这对表格中的文本有效,但对图像无效? 为正在使用的图像视图添加这个 imageView.contentMode = UIViewContentModeScaleAspectFill; 我把它放在情节提要中,但问题仍然存在

以上是关于从服务器加载图像时的动态单元格的主要内容,如果未能解决你的问题,请参考以下文章