【问题标题】:Adding image to UIImageView in UITableViewCell modifies the image view height undesirably在 UITableViewCell 中向 UIImageView 添加图像会不希望地修改图像视图高度
【发布时间】:2020-07-22 16:49:58
【问题描述】:

我在UITableViewCell 中有一个UIImageView。单元格高度根据UILabel 中使用估计的行高的文本行数而变化。我希望此图像在单元格中垂直居中,宽度固定,高度 >= 40 和

标签中有 3 行:

  • 没有图像:图像视图的预期高度约为 60pt
  • 带有图像:图像视图高 80pt - 预计约为 60

标签中有6行:

  • 没有图像:图像视图是 80pt 高,如预期的那样
  • 带有图像:图像视图的高度为 80pt,如预期的那样

这是为什么呢?如何确保图像视图中的图像不会影响图像视图大小,因为我希望由自动布局约束确定的单元格高度来确定它?

Here's a sample project.

【问题讨论】:

    标签: ios uitableview uiimageview


    【解决方案1】:

    虽然我无法使用这些自动布局约束获得预期的图像视图高度,但我确实通过使用单个高度约束并在 UITableViewCelllayoutSubviews 中手动设置其 constant 来实现目标,计算为max(40, min(contentView.bounds.height - 5 * 2, 80))。然后在 superview 中添加一个 CenterY 约束,使其保持垂直居中。现在将图像添加到图像视图不会意外更改图像视图的高度。

    【讨论】:

      猜你喜欢
      • 2021-12-24
      • 2014-08-24
      • 2016-10-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-01
      • 1970-01-01
      • 2016-08-05
      相关资源
      最近更新 更多