相同大小的 Container View 及其子视图

Same size of Container View and its child view

我有一个 iOS 项目,其中有我的主视图控制器 A 和另一个 ViewController BB 作为子视图控制器嵌入到 A 中。整个事情是在 Interface Builder 中使用容器视图设置的。

现在,B 有一些逻辑可以响应平移手势以调整其视图大小。这一切都很好,问题是容器视图总是保持相同的大小,并且不会根据 B 的根视图调整大小。我希望容器视图的大小与 B.

的根视图保持同步

最好的方法是什么?有什么方法可以在 Interface Builder 中进行设置吗?到目前为止,我发现的唯一可行的解​​决方案是创建一个 BDelegate,它 A 监听然后调整容器视图的大小。有没有更简单的方法来实现这个?

谢谢

equalHeight 和 equalWidth 约束应该可以解决您的问题

感谢您的回答,我找到了正确的方向 - 具体来说,这不可能像我想的那样。

无法在父视图控制器和子视图控制器的视图之间设置约束 - 无论是在 IB 中还是在代码中

据我所知,有两种方法可以解决这个问题:

  1. 不要使用第二个 UIViewController。使您的子视图控制器的根视图成为您自己的实际子视图,并且只有一个 UIViewController。

  2. 不要使用自动布局。手动管理子视图控制器视图的框架,并在必要时将回调委托回父视图控制器。在这些委托回调中,您的父视图控制器可以对子视图控制器的视图的大小变化做出反应。