如何添加约束以右对齐 UITableViewCell 内的图像

Posted

技术标签:

【中文标题】如何添加约束以右对齐 UITableViewCell 内的图像【英文标题】:How to add constraint to right align an image inside UITableViewCell 【发布时间】:2019-10-05 13:10:34 【问题描述】:

问题: 我正在尝试在情节提要中为图像设置约束,使其始终与 UITableViewCell 内的右侧对齐

我正在设置图像的尾随空间、顶部和底部空间、高度和宽度。

然后图像会出现在 tableview 之外。 (截图 1)

属性检查器视图中应用的约束如屏幕截图2所示

我使用的是 Xcode 11.0 版

我尝试了什么:

1) 已尝试来自此堆栈溢出线程的建议 Constraints to be set for x position 这与我正在寻找的内容很接近,但在我的情况下似乎不起作用。

2) 设置图片的拖尾空间、上下空间、高宽。

3) 将图像封装在 UI 视图中并尝试第 2 步

4) 只为容器设置顶部或底部空间,添加宽度、高度约束

5) 尝试对表格单元格而不是容器应用空间限制。

在所有情况下,图像都会超出表格视图。

问题

如何在 UITableViewCell 内以图像右对齐的方式满足约束。

如果我遗漏了什么或者您需要任何其他信息来提供您的意见,请告诉我。

点击约束的屏幕截图

【问题讨论】:

【参考方案1】:

单击尾随约束并将其 firstItem 属性更改为前导,而不是像现在一样

trailingOfImage + 7 =leadingOfCell

它在细胞外

【讨论】:

谢谢。这将图像带入了单元格。我将图像拖到右侧并更新了约束常量。现在我收到警告,预期 x=-62,实际 x=288。不确定我这样做是否正确。你能告诉我如何设置约束,这样警告就会消失。 确保常量值为 20 我将常量更新为 20,但警告并没有消失。 从您分享的屏幕截图中取消勾选Relatibe to margin 并选择Leading 谢谢。这解决了问题。我遇到的另一个问题是我没有向 tableview 添加约束。我会接受这个答案。【参考方案2】:

我的建议是不要在 uiview 中包含图片 Step1 给它一个左约束 Example 0 or 1 第 2 步给它顶部和底部约束 第 3 步给它一个固定的宽度 第 4 步 ctl 将标签拖放到图像视图上 步骤 5 中心垂直 第 6 步给出标签左约束 第 7 步给标签固定高度 Step 8 给标签右约束

希望有帮助

【讨论】:

您能否澄清一下为什么要在此处链接标签。假设标签不存在,我如何添加约束来对齐图像

以上是关于如何添加约束以右对齐 UITableViewCell 内的图像的主要内容,如果未能解决你的问题,请参考以下文章

如何在约束布局中对齐线性布局

自动布局和对齐约束

UITableViewCell 具有基于宽度的固有高度

将右对齐约束添加到以编程方式添加的子视图

如何使 UITableViewCell 居中,约束无法对齐

怎样使用AutoLayOut为UIScrollView添加约束