UITableViewCell 中的约束不起作用

Posted

技术标签:

【中文标题】UITableViewCell 中的约束不起作用【英文标题】:Constraints in UITableViewCell not working 【发布时间】:2018-07-18 18:42:13 【问题描述】:

我这几天一直在尝试解决这个问题。我无法让约束在这个 UITableViewCell 上工作。这些是我的限制。 但结果是这样的 红色为单元格背景,青色为UIImageView背景,绿色为标题Label,蓝色为百分比Label。我该如何解决?我想让行高与 UIImageView 中的图像高度相同,但约束使单元格以我不想要的方式显示它的子视图。我希望每个单元格布局看起来与我发布的单元格图片完全相同。

【问题讨论】:

在图像中我们无法读取约束,您想修复什么?看来您首先降低了行高。 @Kerberos 我想让行高与 UIImageView 中的图像高度相同,但约束使单元格以我不想要的方式显示它的子视图。我希望每个单元格布局看起来与我发布的单元格的图片完全相同。 你的图片是否来自API??图片的位置 【参考方案1】:

首先,尝试始终将约束设置为最近的视图。 您已将标题的底部约束设置为进度条,因此您可以看到蓝色后面的绿色视图。将标题的底部约束添加到百分比顶部。

然后,将图像的约束添加到顶部、底部和前导,然后添加纵横比约束。

在您的代码中为单元格添加一个高度,就像您认为它更好一样。

【讨论】:

这对我理解约束有很大帮助【参考方案2】:

像这样进行约束

1- ImageView --> top ,leading ,bottom to contentView & trailing to title & width constraint

2- Title --> top to contentView , bottom to Percentage

3- 百分比 --> 前导,顶部到标题,底部到滑块

4- Slider --> 导致百分比和尾随,底部到 contentView

5- 将 Percentge 的垂直内容压缩阻力设置为 1000

6- 不要实现 heightForRowAt 并使用自动 tableView 单元格设置

【讨论】:

我试过了,但是除了 UIImageView 之外的所有其他子视图都消失了【参考方案3】:

您将要突出显示图像和标签,使其高度相同,点击右下角的“添加新约束”按钮,然后点击“等高”。

【讨论】:

以上是关于UITableViewCell 中的约束不起作用的主要内容,如果未能解决你的问题,请参考以下文章

以编程方式制作的约束不起作用

使用 UIAppearence 设置 UITableViewCell 选择的背景颜色不起作用

创建新的 tableView 条目时,约束不起作用

UITableViewCell 事件中的 UIButton 不起作用

UITableViewCell 中的 Swift UICollectionView 不起作用

UITableViewCell 中的 UIButton 在 iOS7 中不起作用