我应该对此图像视图应用哪些约束?

时间:2017-05-08 19:24:52

标签: ios xcode autolayout nslayoutconstraint

我来自设计。对我使用自动布局就像试图理解克林贡语,而不需要任何以前的语言知识。自动布局违背了所有理解的逻辑。

我遇到这种情况:

enter image description here

要显示纵向和横向的400x400像素的图像视图。此图像必须以1:1的宽高比显示,并在设备风景时将其自身调整为更小。

"图像编辑"逻辑说我必须应用以下约束:

  1. 1:1宽高比
  2. 领先/落后10分。
  3. 中心Y查看
  4. 这适用于肖像,但当我将设备旋转到横向时,图像将会扩展为尊重10个点的前/后,它将被剪切到顶部/底部。

    然后我想,我可以向视图>= 10 pt添加顶部/底部约束... nope。图像水平拉伸,不考虑1:1的纵横比。

    然后我将前导/尾随更改为>=10,现在图像已经显示:

    1. 1:1宽高比
    2. 领先/尾随> = 10分。
    3. >的顶部/底部= 10分。
    4. 这是有效的,但Xcode抱怨图像视图需要Y位置或高度的约束!

      对我来说,Y的定义完全基于前导/尾随/上/下限制,我无法定义高度,因为每个运行的设备都有一个高度。

      为了上帝的缘故。怎么解决?

1 个答案:

答案 0 :(得分:2)

有很多方法可以解决这个问题,但最简单的可能是:

将前导,尾随,顶部和底部约束全部设置为10

将ImageView' s Content Mode设置为Aspect Fit