我正在构建一个具有多个屏幕的iOS应用,但我想避免重复代码以及一个大型情节提要。理想情况下,我希望在需要时基于选定的故事板在内容视图中加载各种View Controller。
屏幕模板(主/根视图)应由3个视图组成,即:
现在,我当然可以使用传统的UINavigationController和UITabBar,但我需要对这些视图进行更大的控制,尤其是在尺寸方面(它们的最小高度大于NavBar和TabBar的高度)。
我还需要根据“特征”和“班级大小”调整这些视图的大小,以不断填充整个屏幕。
我正在尝试使用容器视图执行此操作,但是尽管在自动布局中尝试了一组不同的约束,但我无法让它们自动调整大小。将3个视图放入stackview也不行。
最终,我希望能够分别使用自己的情节提要,在B中以编程方式调用它们并自动调整所有大小,从而对将在 View B 中加载的各种Controller View进行单独处理。 / p>
感谢大家的宝贵帮助! 克里斯
答案 0 :(得分:1)
使用addChildViewController(childVC)
/ addChild(childVC)
( Swift 4.1 / 4.2 ),然后使用myContainerView.addSubview(childVC.view)
时,您要么需要
或
.autoResizingMask
之后,您新添加的子视图将正确布局并调整其大小。