为什么IB在UIView中为UIImageView添加-16的水平空格

时间:2014-10-14 15:20:12

标签: ios xcode uiimageview

我在故事板中的UIView中放置了一个UIImageView并调整大小,以便UIImageView与其父视图的大小相同。

但是,如果我添加约束,我想知道为什么界面构建器为水平间距提出-16的值:

enter image description here

如果UIImageView与父UIView的宽度完全相同,我不明白为什么水平间距值不为0。

如果我添加4个0的约束,则IB会给出错误:

enter image description here enter image description here

为什么IB在故事板场景中期望UIImageView的宽度为288,它与父UIView的宽度相同,本身的宽度为320.

我显然对约束有一些基本的误解,但这似乎完全不直观 - 故事板中UIView的宽度为320,故事板中UIImageView的宽度为320。为什么IB期望宽度为288,这些-16值的来源和原因来自哪里?

1 个答案:

答案 0 :(得分:0)

您已将图片视图设置为与其容器视图边距相同的宽度。

有两种方法可以解决这个问题:

  1. 取消选中与#34;相对于边距"的框在界面构建器中。
  2. 在视图控制器的viewDidLoad方法中,设置self.view.layoutMargins = UIEdgeInsetsZero