iOS 7 Autolayout不起作用
问题描述:
我一直在这个问题上工作了一段时间,现在我无法解决它。我下载了Apple的Autolayout指南,并找不到答案/解决方案。问题是我在我的视图控制器中添加了一个UIImageView
,当我将window
的外形因子从3.5更改为4时,反之亦然,image view
被拉伸。iOS 7 Autolayout不起作用
为了解决这个问题,我尝试了很多方法,比如点击重置建议的约束,清除所有约束,并通过固定和对齐构建自己的约束。
通过协调和牵制我设置height
和width
的大小在界面生成器和horizontal
和vertical
位置为好。不幸的是,在改变Interface Builder中的形状因子后,图像仍然延伸。我试图只钉住UIImageView
的height
,但它不起作用。
我该如何解决这个问题?
答
Autolayout只处理UIImageView
的框架/范围。图像呈现的实际方式是通过它的contentMode属性来控制的。您需要将其设置为UIViewContentModeScaleAspectFit
或UIViewContentModeScaleAspectFill
以避免拉伸。
+0
是否有办法保持UIImageView框架固定到特定的高度和宽度,即使我改变了因子形式(屏幕大小)? – HusseinB
什么是图像大小?尝试创建4“的图像显示,然后打开自动布局,它将工作3.5” –
图像视图应该是240×203的大小和图像是480×406因为瞄准视网膜(因此,两倍的大小) 。事情是我想为4“和3.5”相同的尺寸,我想UIImageView被固定,即使我改变了屏幕尺寸。 – HusseinB
可能是愚蠢的,但只要确保你没有创建太多的约束 - 例如,如果你已经固定从顶部的垂直位置和从底部垂直位置,这可能会覆盖你的身高约束并导致它伸展调整大小。 – ttarik