单元格中的内容视图如何占据整个单元格?

时间:2019-03-29 04:48:35

标签: ios swift xcode uitableview autolayout

我正在尝试创建水平堆叠视图,并使其占据整个像元宽度。我在此水平堆栈视图中有两个垂直堆栈视图。我已经将水平堆栈视图固定在超级视图的前端和后端,并将其垂直对齐到包含视图。当我在情节提要中看到以下链接时,它看起来像预期的一样:https://imgur.com/a/6kFbhrC

但是当我运行时,它在https://imgur.com/sCEgwG3的右侧有这个间距。

我试图通过使背景具有这种褐红色来查看是否可以看到单元格内容视图的宽度。在我看来,这似乎是整个单元格的宽度,所以我不确定在这里做错了什么。

更新:在调整堆栈视图的宽度之后。我不太确定这是否是stackView问题。为stackview设置固定宽度可以解决一个屏幕的问题,但这不适用于所有屏幕,因此尝试将其限制在边缘。最后,我将所有内容都从单元中删除了,只留下了标题标签。 Stripped Down Cell

我以父视图为中心,但是它仍然忽略了它的约束。 Run Time View 我猜自动布局可以做到这一点。不太确定优先考虑什么,并迫使它忽略我的约束。 我查看了调试视图的层次结构,它在UILabel上有一个紫色标签,指示该位置不明确。 Debug View Hierarchy 我猜想自动布局会尽力修复其位置。不知道这里有什么歧义。

更新2:我不知道我设置的情节提要约束出了什么问题。我最终从控制器中删除了所有内容,并从头开始。完成此操作后,它按预期工作。有时最好从头开始。

1 个答案:

答案 0 :(得分:0)

您需要定义水平堆叠视图子级的宽度(两个垂直堆叠视图)。您可以将两个垂直堆栈视图的宽度设置为相等,这样它们将占用相等的空间并填充父对象。

enter image description here