UIImageView / UIView的Autolayout纵横比

时间:2015-01-02 13:19:42

标签: ios uiview uiimageview autolayout xib

如何为UIImageView / UIView设置autolayout,以便iphone 6和6 plus的图像视图宽度和高度增加一点。我已经尝试添加约束宽高比,但增加的高度和宽度非常大。无论如何设置约束高度和图像视图的宽度可以手动设置为iPhone 6和6加。看一下屏幕截图,iphone 6和6 plus中的图像视图应该比它现在显示的要小一些。 enter image description here

2 个答案:

答案 0 :(得分:35)

据我所知,您的问题是您希望控制每种不同屏幕尺寸的图像增加量。你可以控制一切。您需要做的是为图像指定一个等宽度约束。优先考虑图像的宽度。关系将与superview关联,然后您可以通过添加自己的乘数来更改关系。

您需要做什么:

1)选择图像视图。

2)按住控制键。握住它时,将鼠标从图像视图拖动到外部视图。

3)选择等于宽度'。

4)在约束条件中双击约束条件。标签

5)确保图像视图显示为第一个项目,如果没有点击第一个项目,请选择“反转第一个和第二个项目”。

6)使用乘数进行游戏,直到您对预览屏幕上的结果感到满意为止。

答案 1 :(得分:5)

有时使用宽高比约束无济于事。在这种情况下,使用具有公式I的相等宽度和相等高度约束将通过示例解释如下。

假设我有一个UIView占据iPhone 5的整个宽度,即320点。 (记住1点=视网膜显示的2像素)和46点的高度。我希望在这个UIView中有一个按钮(宽度= 30点,高度= 60点),它会根据具有相同宽高比的不同手机调整大小。 我将控制从按钮拖动到UIView并首先选择相等的宽度然后将使用Equal高度再次执行相同的操作。接下来,我将选择约束,并确保第一项是按钮,第二项是UIView。我将使用这个公式来计算乘数:

计算宽度乘数: 60(按钮的宽度)/ 320(UIView的宽度)* 100 = 18.75%

计算高度乘数: 30(按钮高度)/ 46(UIView高度)* 100 = 65.217%

现在输入这个乘数(记得像上面一样使用%age符号),这应该调整不同大小的iPhone屏幕的按钮大小。