【发布时间】:2015-02-26 01:49:06
【问题描述】:
我在 UIScrollView 顶部有一个 UIImageView,我希望它适合设备宽度,然后自动设置它的高度,以便保留图像比例。
我正在使用自动布局,所以我使用约束将 UIImageView 绑定到屏幕的顶部、左侧和右侧边缘。 我的问题是, UIImageView 会自动调整其框架大小以适应 UIImage 高度。之后我不能真正改变这个框架,因为它让 UIImageView 和其他 UI 元素之间存在间隙,这些元素应该就在它下面。
我找到了一种解决方法,即在将图像放入 UIImageView 之前手动将其调整为合适的大小,但效率不高,并且在调整视图大小时会产生问题,例如设备旋转时。
有没有人找到一种方法来强制 UIImageView 更改其框架并保留它而不是使用图像的大小?
皮埃尔
编辑:我添加了屏幕截图,以便您查看问题。
这是预期的结果:
【问题讨论】:
-
你玩过图像视图的内容拥抱优先级吗?尝试降低它们。
-
它们已经是 250,并且没有任何约束低于它们。我试图将它们设置为 249,但它并没有改变任何东西。同样,我认为这不是问题,因为当将图像放入 imageView 时,帧高度设置为图像高度。由于所有内容都放在一个 scrollView 上,因此 imageView 采用了它想要的所有高度。
标签: ios uiimageview autolayout