UITableViewAutomaticDimension 用于表格视图单元格,同时保持图像纵横比

Posted

技术标签:

【中文标题】UITableViewAutomaticDimension 用于表格视图单元格,同时保持图像纵横比【英文标题】:UITableViewAutomaticDimension for table view cell while keeping image aspect ratio 【发布时间】:2016-06-26 21:42:30 【问题描述】:

所以我将UITableViewAutomaticDimension 用于我的表格视图,并在viewDidLoad: 方法中输入:

tableView.estimatedRowHeight = 190.0
tableView.rowHeight = UITableViewAutomaticDimension

问题是我想显示各种尺寸的图像,并且我想保持这些图像纵横比。但是,如果 图像的width 与设备width 不匹配,而不是pixel 中的图像大小,则图像视图结束被拉伸。有时points 值 2 像素或 3 像素,具体取决于设备(@2x 或 @3x)。

【问题讨论】:

【参考方案1】:

点总是与像素相关,因为点的纵横比将保持在像素中,只要 2x 和 3x 的图片具有相同的纵横比。自动尺寸要求以允许单元格根据所需数量增长的方式设置约束。

如果需要,可以让图像方面适合或基于其他方面的增长,它会随着其容器视图一起增长。此时,您有责任确保资产中的图像具有正确的纵横比。

您此时应用的约束对于细胞按需要生长很重要。我可能会提高图像压缩阻力,并可能降低其垂直内容拥抱。这只需要正常上下 1 的数量来完成,因为它的优先级高于它所限制的其他事物,除非您切换了其他事物的数量。

如果没有更多信息,这与我为您提供的答案差不多。约束设置是细胞正常生长的最重要因素,如果您告诉它,图像将始终保持其外观。

【讨论】:

以上是关于UITableViewAutomaticDimension 用于表格视图单元格,同时保持图像纵横比的主要内容,如果未能解决你的问题,请参考以下文章