情节提要中的约束和自动布局如何工作? Xcode 9

时间:2018-07-19 07:30:00

标签: xcode autolayout

我已经观看了几段视频,并阅读了有关如何为我的应用程序使用约束和自动布局的文档。

我正在尝试使我的设计在所有屏幕尺寸上通用。

问题是,无论我做什么,我的设计无处不在,我也不知道为什么。

示例:我将在屏幕中央放置一个标题,该标题应该设置为y轴,并且我将打开或关闭长宽比。(或者不起作用)。

如果标题从左边到100px,从右边到100px,我将添加这些约束,并添加Y轴约束。我将打开宽高比,但尝试将其关闭。在大多数情况下,Y轴约束都可以正常工作。

在添加了约束的默认设计中,标题看起来很完美,但是如果以其他手机尺寸运行,则标题向左拍摄30-40%。我无法坚持任何设计。

我可以使背景图片正常工作,但其他资产对我而言却不起作用。它变得越来越令人沮丧,我觉得我缺少明显的东西,但是我发现没有东西给我那个缺失的链接。

总而言之:我在Xcode 9的情节提要中观看了有关约束和自动布局的视频/阅读文档,但是当我加载不同的屏幕尺寸时,我的设计陷入了困境,并且不遵守约束。

我在这里想念什么?

2 个答案:

答案 0 :(得分:0)

如果需要,如果标题从左边到100px,从右边到100px,则将center horizontal添加到超级视图。您可以修复heightwidth。还有Y axis

对我有用。谢谢

答案 1 :(得分:0)

在使用约束时,请始终记住指定以下内容:

  • x坐标
  • y坐标
  • 高度
  • 宽度

如果您明确指定了所有这些内容,它将起作用。就这么简单。

  

我将在屏幕中央(设置的y轴)上放置一个死定的标题

也就是说,您已经指定了标题的x和y坐标。好!现在,您需要考虑其大小。您想如何改变尺寸?这里有一些可能性:

大小不变:

enter image description here

屏幕的左边缘和左边缘,屏幕的右边缘和右边缘之间的恒定距离:

enter image description here

宽度是屏幕宽度的一半,高度是屏幕高度的一半:

enter image description here

最后一种情况可能有些棘手。您可以通过首先添加一个宽高比约束,然后在属性检查器中设置其他内容来添加这些约束:

enter image description here