Autolayout:UIButton最终超出了屏幕边界

时间:2015-03-04 22:19:31

标签: ios swift autolayout ios-universal-app

我正在使用XCode构建通用应用程序,并且我遵循了#34;使用Swift开始iPhone开发的第3章的过程"。

我有一个带有两个按钮的视图,名为" left"和"右",以及带有空文本的标签。这就是他们在开始时的定位:

enter image description here

接下来我添加一些约束。步骤是:

  1. 我从标签拖动到视图,并添加两个约束:"在容器中水平居中"和"顶部空间到顶部布局指南"。然后我选择标签并点击"更新约束"。
  2. 对于左右按钮,我添加了一个约束:"容器中的垂直中心"。
  3. 我添加一个" pin"约束从左边分开32个点的左按钮,右边的按钮也是如此(但我从右边添加了一个分隔符)。
  4. 要解释这最后一步,我为左键添加的是:

    enter image description here

    这就是我为右键添加的内容:

    enter image description here

    接下来,由于有一些警告,我选择了左右按钮,然后点击"更新帧"。这就是我最终的结果:

    enter image description here

    右侧按钮超出屏幕右边界32点,当我运行应用程序时,显示按钮(显然)。右键的引脚约束自动更新为-32而不是32,如果我再次更改它,我会收到一个错误,说有两个约束是冲突的:

    enter image description here

1 个答案:

答案 0 :(得分:0)

根据您的问题,您需要根据我在下面设置的图片从textfiled左右设置约束。

将左边约束设置为textfield和左按钮。

enter image description here

将右边约束设置为文本字段和右按钮。

enter image description here

我给textfield提供了最高限制,领先和跟踪到textfield。

enter image description here

enter image description here

**结果:**

enter image description here

希望这能解决您的问题。