2016-03-15 85 views
0

我正在开发一个单独的xib文件中的组件,然后将其添加到我的控制器中。问题是我的内部容器的尾端超出了我的外部容器的边界。更确切地说,我的子视图宽度适合我的视图控制器,但子视图内的元素将从该容器中移出。约束全部设置为0(顶部,底部,尾部,领先)。我已经为容器设置剪辑子视图为true。下面的图片显示了问题。当我构建应用程序时,第一张图片上的右侧标签不受容器限制。每个元素都是一样的。我玩过尾随约束,如果将其设置为-40,则屏幕上出现标签,但我觉得必须有更好的解决方案。子视图跳出屏幕边界iOS(自动布局)

Storyboard file Application build

,我使用的大小类是紧凑型:常规。

回答

0

当然,您提出了正确的解决方案。对于像标签或图像视图(组件,可以基于内容隐式确定其大小)的组件,只需要在每个维度中设置一个约束。在你的情况下,它应该足以设置尾随,例如,中心Y的label。其余部分将取决于标签内容本身

更新

看看Apple's guide on autolayoutIntrinsic Content Size

+0

是的,但我的问题是,当我设置尾0它实际上不是0,但标签从屏幕上移开(例如,如果您将其设置为-20或其他)。如果我要从左到右组装我的元素,这不会成为问题,但我需要将标签钉在屏幕的右边缘。 –

+0

在这种情况下,问题在于其他地方,而不是尾随限制。你还有什么限制? –

+0

我设法通过代码而不是故事板添加子视图来解决它。我找不到另一种解决方案。 –