iOS自动布局百分比

时间:2016-04-24 09:23:38

标签: ios autolayout

我想使用autolayout创建一个简单的iOS应用程序,它显示三个UIViews。一个在顶部,一个在左边和 另一个在右边。顶视图应为50像素高,并完全填充水平空间。左列应填充40%的水平空间,并应填充100%的水平空间 垂直空间。右列应为水平空间的60%和垂直空间的100%。最后在左边的UIView想要添加一个按钮。

3 个答案:

答案 0 :(得分:5)

是的,你可以。

  1. 在顶部添加第一个视图,添加四个约束,前0个左0个右0和高50。 enter image description here
  2. 在第一个视图的底部添加第二个视图,将其设置为0左0 0高100。
  3. 这是技巧,选择第一个和第二个视图,然后使它们等宽。
  4. 选择secound视图的宽度约束,并将乘数更改为0.4。 enter image description here

答案 1 :(得分:2)

你的约束应该是,

第一个视图 - 顶部,前导(左),尾随(右)和修复高度

左视图 - 顶部,左侧(前方),底部和相等宽度,带有乘数为0.4的超视图(或带有0.4乘数的宽度约束)

右视图 - 顶部,右侧(尾随),底部和相等宽度,带有乘数为0.6的超视图(或带有0.6乘数的宽度约束)

希望这会有所帮助:)

答案 2 :(得分:2)

现有的两个答案对我不起作用。我的答案是使用Xcode版本10.1(10B61)构建的。

核心问题是“如何将视图的宽度设置为情节提要中的百分比”。 答案:视图的宽度需要与超级视图关联。

说明:

  1. 在Main.storyboard(已包含View Controller和View)中,添加一个View。我将其称为YellowView)。并将其包含的视图名称更改为SuperView。
  2. 在YellowView的“属性”检查器中,将“背景”更改为“黄色”。
  3. 单击“ New Constraints”,顶部= 0,前导(左)= 0,高度= 50
  4. 控件从YellowView拖动到Superview并放开,在出现的对话框中选择“等宽” Figure 1 注意:YellowView的宽度变为SuperView的宽度。
  5. 在情节提要中,双击我们刚刚添加的宽度约束,然后将“乘数”更改为0.25 (注意:键入.25无效-前导零是必需的)