如何基于剩下的高度布局UIImageViews?

时间:2015-11-28 22:05:20

标签: ios xcode swift autolayout ios9

我正在尝试创建这种布局,但是我的表现非常糟糕,以至于我没有留下任何言论。我已经尝试了三天,但我无法创建布局。

如果视图的高度发生变化,我试图在中间刻度上显示三个图像视图,但它们的行为不正确。我已成功设法使比率正确,但图像要么在蓝色按钮后面,要么蓝色按钮突然失去其高度或文本消失。

是不是可以在中间有三个图像视图,在标题和文字+蓝色按钮布局后取出剩余的高度,然后以正确的比例正确显示

enter image description here

1 个答案:

答案 0 :(得分:0)

您可以尝试多种方法:

  1. 尺寸等级:
    为每种可能的大小布置视图(可能是最简单但最不灵活的
  2. 使用具有不同优先级的约束:
    您可以通过为高度添加约束,然后将其关系设置为等于或小于,来为图像视图设置最大高度。这样可以放大图像直到达到最大尺寸。

    然后在底部框和图像之间添加第二个约束。将此约束的优先级设置为750.当底部视图向下移动时,这会使图像在高度上增长。

    然后添加另一个约束来设置图像的纵横比。如果您使用视图模式进行Aspect Fit,则现在将始终按比例放大图像以适合图像视图。

    要使所有图像按比例缩放,请在它们之间添加相等宽度和相等高度的约束,然后将因子设置为与这些图像之间的比例相匹配。

    现在的最后一步是正确地垂直对齐图像,如图中所示。为此,在图像之间添加约束,使它们按垂直中心,底部,基线或顶部对齐。