如何缩放 UIImage 以适应 UIScrollView 的尺寸?

How to scale UIImage to fit dimensions of UIScrollView?

我有一个尺寸为 300x600(高 x 宽)的 UIImage。 UIImage 的相对层次结构是这样的:

使用 AutoLayout,我为 UIImageView、UIScrollView 和 UIVIew 设置了以下约束:

我已将 TableView 的相对高度尺寸设置如下:

// Setting Last Row to height = 70 pixels and first row to fill balance of screen:
override func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {
    if indexPath.row == 1 { return 70 }
    else { return tableView.frame.size.height - 70 }
}

我希望 UIImage 的 height 与它所在的 UISCrollView 的高度完全匹配。我不关心 UIImage 的最终宽度,但希望它遵循 'AspectFit' 的限制。所以我可能会雇用

imageView.contentMode = UIViewContentMode.ScaleAspectFit

...可能在

override func viewDidLayoutSubviews() {
    super.viewDidLayoutSubviews()
}

我会设置 UIScrollView 的动态高度和宽度参数,然后将 UIImage 高度设置为跟随 UISCrollView 的高度并允许 ScaleAspectFit 自动处理宽度。

我已经尝试了各种代码演绎来实现这一点,但未能达到预期的结果。

问题:我走的路对吗?任何人都可以让我开始使用一些框架代码,以便我可以根据需要对其进行自定义。

旁注:我只允许我的应用程序使用纵向模式。没有风景。

非常感谢您的关注和时间;)

我会制作一个容器 UIView 来保存确切的 UIScrollView 然后我可以创建滚动视图的约束 child UIImageView 到容器视图的约束,即相等高度。

如我所料,这些限制对他们的 parents 就像

UIView <--> UIScrollView <--> UIImageView 

但试试

UIView <--> UIImageView