【问题标题】:Why does IB add horizontal spaces of -16 for a UIImageView within a UIView为什么 IB 在 UIView 中为 UIImageView 添加 -16 的水平空格
【发布时间】:2014-12-09 11:03:26
【问题描述】:

我在故事板的 UIView 中放置了一个 UIImageView,并调整了它的大小,使 UIImageView 的大小与其父 View 的大小相同。

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

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

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

为什么 IB 期望 UIImageView 的宽度为 288,而在情节提要场景中它的宽度与本身宽度为 320 的父 UIView 的宽度相同。

我显然对约束有一些基本的误解,但这似乎完全不直观 - UIView 在情节提要中的宽度为 320,UIImageView 在情节提要中的宽度为 320。为什么 IB 期望宽度为 288,这些 -16 值来自何处以及为何?

【问题讨论】:

  • 我觉得你的问题和this one类似

标签: ios xcode uiimageview


【解决方案1】:

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

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

  1. 在界面生成器中取消选中“相对于边距”框。
  2. 在视图控制器的viewDidLoad方法中,设置self.view.layoutMargins = UIEdgeInsetsZero

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-01-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-16
    • 2023-04-07
    • 1970-01-01
    相关资源
    最近更新 更多