使视图的高度随图像 Xcode swift 的高度动态变化

Posted

技术标签:

【中文标题】使视图的高度随图像 Xcode swift 的高度动态变化【英文标题】:Make the height of the view dynamically change with height of image Xcode swift 【发布时间】:2015-07-30 04:44:18 【问题描述】:

我有一个图像,我想在 UIScrollView 中占据整个屏幕。但是,为了避免图像的剪裁和失真,我设置了约束,因此图像始终具有正确的纵横比。当您在不同尺寸的屏幕上运行此程序时,图像的尺寸会有所不同。我可以编写一些代码来使我的滚动视图始终与我的图像高度相同吗?我需要我的滚动视图根据图像的高度而改变,因为在不同的设备上我的图像的高度会改变。

目前为止:

class Second : UIViewController 

@IBOutlet weak var myScrollView: UIScrollView!
@IBOutlet weak var myImage: UIImageView!

override func viewDidLoad() 

    ScrollView.contentSize.height = 1300


我在图像上使用的约束是:

与滚动视图等宽 在滚动视图中水平输入 滚动视图顶部的顶部空间 宽高比匹配(因此图像不会失真)

谢谢。非常感谢任何帮助!

【问题讨论】:

【参考方案1】:

你需要以下约束

For ScrollView:

超视图的前导和顶部空间

For ImageView inside ScrollView :

滚动视图的宽度和高度相等 滚动视图的顶部、底部、尾随和前导空间

【讨论】:

这将使我的图像视图无论我的滚动视图的大小是多少,但我想要的是我的滚动视图根据我的图像的高度动态变化(因为它在不同的设备上会有不同的高度 我们给出了相等的高度约束,所以滚动视图采用图像高度

以上是关于使视图的高度随图像 Xcode swift 的高度动态变化的主要内容,如果未能解决你的问题,请参考以下文章

以编程方式更改 UIImageView Xcode Swift 的高度和宽度

在滚动视图中更改 UIView 而 / 更新滚动视图高度 - Swift 3 / Xcode 8

swift,如何使表格视图单元格具有动态高度[重复]

XCODE/Swift Autolayout ScrollView with dynamic label, textview etc. 如何根据 textview 设置滚动视图高度

在 Xcode 中根据设备的高度使页面可滚动

iOS:UIView 的 Autolayout 拉伸高度过多(Xcode 8、Swift 3)