我有一个容器视图控制器设置为我的根视图控制器。在这个我有 2 个子视图控制器堆叠在另一个之上(所以只有最上面的视图是可见的)。当我从纵向旋转到横向时,我的底部视图控制器视图得到正确旋转和扩展(填充屏幕)但我的顶部视图控制器视图没有得到扩展(所以我可以看到顶部视图右侧的底部视图控制器控制器)。
我假设因为这两个都是作为容器的子级添加的,所以它们都会适当地旋转和扩展,但它似乎并没有以这种方式工作。有什么建议么?
我有一个容器视图控制器设置为我的根视图控制器。在这个我有 2 个子视图控制器堆叠在另一个之上(所以只有最上面的视图是可见的)。当我从纵向旋转到横向时,我的底部视图控制器视图得到正确旋转和扩展(填充屏幕)但我的顶部视图控制器视图没有得到扩展(所以我可以看到顶部视图右侧的底部视图控制器控制器)。
我假设因为这两个都是作为容器的子级添加的,所以它们都会适当地旋转和扩展,但它似乎并没有以这种方式工作。有什么建议么?
您需要使用 UIViewAutoResizingFlexibleWidth 和 UIViewAutoResizingFlexibleHeight。它们的工作方式是,如果父视图改变大小,子视图(带有适当的掩码)将按比例调整宽度和高度。如果您希望子视图控制器的视图始终填充父视图的大小,那么您可以执行以下操作:
childVC.view.frame = parentVC.bounds;
childVC.view.autoresizingMask = UIViewAutoResizingFlexibleWidth | UIViewAutoResizingFlexibleHeight;