iOS - UITableViewCell 中的 UIImage + UILabel 约束冲突
iOS - UIImage + UILabel Constraint Conflict In UITableViewCell
在我的应用程序中,我使用 UITableView
为用户显示文章。我有两种 UITableViewCells
;一个文章没有图像,另一个文章有图像。
两种类型的 UITableViewCells
都有标题 UILabel
和描述 UILabel
。我将标题 UILabel
的 numberOfLines
设置为 0,因为某些文章标题可长可短。这是 UITableViewCell
高度的决定因素,因为我使用的是 UITableViewAutomaticDimension
。
在文章没有图像的情况下完美显示,如下所示:
但是,如果某篇文章有图片,它就无法正常工作。这些是我的 UIConstraints
:
文章图片查看
距单元格右侧、顶部和底部 0 像素
宽度限制为 90 像素
标题标签
numberOfLines
是 0
距单元格顶部和左侧 8 个像素
文章图像视图左侧 8 像素
描述标签
numberOfLines
是 1
距单元格左侧 8 个像素
距标题标签底部 0 像素
文章图像视图左侧 8 像素
距单元格底部 8 像素
显示如下:
这非常令人沮丧,因为我的约束条件看起来足够合乎逻辑,可以正确地完成工作。
我需要我的布局看起来像 Pocket 应用程序那样:
对我做错了什么有什么想法吗?任何帮助或建议将不胜感激。谢谢。
*****更新*****
根据@kirander 的建议,我将 UIIMageView
的内容压缩阻力优先级更改为 250,这帮助我得到了这个结果:
有什么方法可以减少标题标签中剩余的 space 吗?我需要标题标签的高度仅能容纳所有文本,而不是多一个像素。
我最终在 kirander 和 Mike Taverne 的帮助下解决了这个问题。如果您需要与此类似的紧凑设计,这些限制条件让我得到了我想要的东西:
文章图片查看
距单元格右侧、顶部和底部 0 像素
宽度限制为 90 像素
内容压缩阻力优先级 -> 250
标题标签
numberOfLines 为 0
距单元格顶部和左侧 8 个像素
文章图像视图左侧 8 像素
描述标签
numberOfLines 为 1
距单元格左侧 8 个像素
距标题标签底部 0 像素(我在最初的问题中提到了这一点,但事实证明我没有...更正这让我转向了我的解决方案)
文章图像视图左侧 8 像素
距单元格底部 8 像素
这些约束给了我以下紧凑的设计:
在我的应用程序中,我使用 UITableView
为用户显示文章。我有两种 UITableViewCells
;一个文章没有图像,另一个文章有图像。
两种类型的 UITableViewCells
都有标题 UILabel
和描述 UILabel
。我将标题 UILabel
的 numberOfLines
设置为 0,因为某些文章标题可长可短。这是 UITableViewCell
高度的决定因素,因为我使用的是 UITableViewAutomaticDimension
。
在文章没有图像的情况下完美显示,如下所示:
但是,如果某篇文章有图片,它就无法正常工作。这些是我的 UIConstraints
:
文章图片查看
距单元格右侧、顶部和底部 0 像素
宽度限制为 90 像素
标题标签
numberOfLines
是 0距单元格顶部和左侧 8 个像素
文章图像视图左侧 8 像素
描述标签
numberOfLines
是 1距单元格左侧 8 个像素
距标题标签底部 0 像素
文章图像视图左侧 8 像素
距单元格底部 8 像素
显示如下:
这非常令人沮丧,因为我的约束条件看起来足够合乎逻辑,可以正确地完成工作。
我需要我的布局看起来像 Pocket 应用程序那样:
对我做错了什么有什么想法吗?任何帮助或建议将不胜感激。谢谢。
*****更新*****
根据@kirander 的建议,我将 UIIMageView
的内容压缩阻力优先级更改为 250,这帮助我得到了这个结果:
有什么方法可以减少标题标签中剩余的 space 吗?我需要标题标签的高度仅能容纳所有文本,而不是多一个像素。
我最终在 kirander 和 Mike Taverne 的帮助下解决了这个问题。如果您需要与此类似的紧凑设计,这些限制条件让我得到了我想要的东西:
文章图片查看
距单元格右侧、顶部和底部 0 像素
宽度限制为 90 像素
内容压缩阻力优先级 -> 250
标题标签
numberOfLines 为 0
距单元格顶部和左侧 8 个像素
文章图像视图左侧 8 像素
描述标签
numberOfLines 为 1
距单元格左侧 8 个像素
距标题标签底部 0 像素(我在最初的问题中提到了这一点,但事实证明我没有...更正这让我转向了我的解决方案)
文章图像视图左侧 8 像素
距单元格底部 8 像素
这些约束给了我以下紧凑的设计: