旋转 UIImageView 并正确更新纵横比

Rotate UIImageView and make aspect ratio update properly

我有一个 UIScrollview,在这个滚动视图中我有一个包含 UIImageView (scaleToAspect) 的容器 UIView。我使用滚动视图 zoom/pan 容器-UIView。有用。用户还应该能够旋转图像,我通过在 ImageView 上执行 CGAffineTransform 来实现。转换 ImageView 时,边界不会更新,因此如果从 Portrait 开始,图像会填充宽高比,并在底部和顶部留有边距。转换为横向后,我在两侧得到了完全相同的边距(应该没有边距的地方”,所以图像不会填满整个宽度。如何正确管理?

Before rotation After rotation

解决方案是使 ImageView 的边界等于作为 ScrollView 的直接子级的容器 UIView 的框架。

imageView.bounds = imageView.superview!.frame