我有一个uiviewController,它具有播放视频的Uiview。
对本uiview的约束如下。
落后空间:supperiew
领导空间:supperiew
最高空间
底部空间:底部布局指南
当我以肖像模式运行该应用程序时,它可以正常工作。当我通过转动iPhone来改变景观的方向时,它保留了与肖像模式相同的宽度和高度,并且不会在全屏中播放视频
故事板中的当前方向是iPhone 7中的肖像。
当我将故事板板上的方向旋转到景观中并运行该应用程序时,它会按预期在全屏中运行,但Uiview不会在肖像模式下调整它的大小。
在肖像模式的故事板中添加约束时,我还为景观模式添加了约束。
我还尝试为每个约束常数添加一个变化。
我无法弄清楚问题是什么。任何帮助将不胜感激。谢谢。
我在旋转旋转时也有类似的问题,我找到了解决方案:
根据设备方向角度转换视图:
customView.transform = CGAffineTransform(rotationAngle: angle)
调整视图框架以适合新方向:
customView.frame = CGRect(x: 0, y: 0, width: containerView.bounds.width, height: containerView.bounds.height)
或:
customView.frame = containerView.bounds
更新约束并触发布局更新,以确保正确定位和调整视图及其子视图:
customView.translatesAutoresizingMaskIntoConstraints = true
customView.autoresizingMask = [.flexibleWidth, .flexibleHeight]
customView.setNeedsLayout()
customView.layoutIfNeeded()
我希望这个或类似的东西会有所帮助。