UITableViewCell 布局问题
Posted
技术标签:
【中文标题】UITableViewCell 布局问题【英文标题】:UITableViewCell layout problems 【发布时间】:2015-01-21 00:25:06 【问题描述】:我有一个简单的自定义UITableViewCell
,如下所示:
UIImageView
应该与单元格一样高,并且在最左侧时保持相同的比例。这行得通。
标题标签应该保持垂直居中,并且图像中的像素数量为 x。这行得通。
最后,9.9 标签应该垂直居中,距离右侧的披露指示符 x 像素。这行得通。
问题是,我试图使标题标签尽可能宽,同时保留图像和 9.9 标签的 x 像素。我尝试通过在图像(左填充)和 9.9 标签(右填充)上设置约束来做到这一点,但随后 Xcode 抱怨 9.9 标签的水平设置不明确。
谁能帮我在不破坏 9.9 标签右侧约束的情况下给标题标签一个动态宽度?
【问题讨论】:
【参考方案1】:可能有点晚了,但是您有 2 个可以增长或缩小的标签。由于您没有给约束提供任何线索,因此代码无法决定 Title 是否应该增长或 9.9 应该增长以适应屏幕的宽度。
您可以调整标题的水平拥抱/压缩,使其在 9.9 标签之前增长。这意味着您可以避免使用固定宽度。
【讨论】:
【参考方案2】:我认为如果您将 9.9 标签约束为固定宽度(假设您知道它的大小不会改变),它会起作用。
从左到右:
图像的左约束为 0 图片有比例限制 标题标签对x
像素的图像有限制
标题右限制为 x
像素的 9.9
9.9 有固定宽度限制
x
像素的9.9右约束
希望对你有帮助
【讨论】:
完全忘记了固定宽度,这就是我需要的!感谢您的帮助!以上是关于UITableViewCell 布局问题的主要内容,如果未能解决你的问题,请参考以下文章
如何在 UITableViewCell 上使用 CAGradientLayers
如何在 UITableViewCell 中添加多行文本字段?
自定义 UITableViewCell 创建了两次......让我发疯
UITableViewCell 使用 separatorInset 隐藏分隔符在 iOS 11 中失败
iOS - UITableViewCell 内的 UIScrollView 内的 UIView 未触发 UITapGestureRecognizer