如何防止UIImageView使用Autolayout调整大小

时间:2012-12-21 22:50:54

标签: ios ios6 uiimageview autolayout

我正在使用自动布局重新创建我的UI,顶部有一个导航栏,UIImageViews的2x2网格填充了屏幕的其余部分。我放入了所有约束,因此它可以在任何方向上保持这种排列,并且当UIImageViews中没有图像时它运行良好。当我以编程方式在UIImageViews中加载图像时,它们会改变大小和位置,即使我有约束可以防止这种情况。

我为所有内容关闭了所有自动调整遮罩,并将UIImageViews设置为Aspect适合。

这种自动布局对我来说是新的,但我认为我有它工作......直到我把图像放在那里。为什么会改变UIImageViews的大小和位置?

感谢您的帮助!

1 个答案:

答案 0 :(得分:3)

如果将它们与视图控制器中的插座链接,则可以在运行时修改约束。

对于您的情况,您将添加宽度和高度约束并将它们链接到两个出口。 然后,在您知道图像尺寸后,您将更改常量值。

我在这里详细描述了一个类似的用例:http://www.cocoanetics.com/2012/11/first-good-auto-layout-use-case/