首页 > 解决方案 > 视图控制器不遵守 XIB 自动调整大小掩码

问题描述

UIView 子类是在 XIB 类型中创建的CustomUIView: UIView。它包含多个出口,每个出口都使用自动调整大小(不是自动布局)。

在此处输入图像描述 在此处输入图像描述 在此处输入图像描述

这个 XIB 的视图是这样加载的:

// In CustomUIView class

  // Initializer used by Interface Builder.
  required init?(coder: NSCoder) {
    super.init(coder: coder)
    initialize()
  }

  func initialize() {
    // Load the view
    let contentView = // typical func to load view from NIB. Owner argument is self. 
    addSubview(contentView)
   }

这个 CustomUIView 像这样添加到视图控制器中: 在此处输入图像描述

问题是视图控制器的视图不遵守 XIB 中定义的自动调整参数。

在此处输入图像描述

现在,理论上可以告诉视图控制器的视图,clip to bounds但这不是一个合适的解决方案。我错过了什么?

标签: iosswiftuiviewxib

解决方案


感谢@donmag 间接指出解决方案。

这是作者没有@donmag 所拥有的。

autoresize 掩码需要转换为约束:

  1. 单击您的 XIB 视图。
    在此处输入图像描述

  2. 将布局属性更改为“将掩码转换为约束”。 在此处输入图像描述


推荐阅读