使用Autolayout更改UImageView大小

时间:2017-05-18 13:15:13

标签: ios iphone autolayout xcode8

我在开始时和下面都有一个imageview,有一系列按钮垂直放置在另一个之下。因此,在设计屏幕时,我将所有视图放在视图控制器中并添加到垂直堆栈中。水平和垂直居中的堆栈视图。对于所有按钮,我设置了相等的宽度。在堆栈视图中,我给出了相等的间距。在所有iPhone中,除了iPhone4之外,它正确地使用了正确排列的ui元素。在iPhone 4中,它们彼此相互接触。请找到附件。我在这里错过了什么约束?enter image description here

2 个答案:

答案 0 :(得分:1)

这是因为iPhone 4的屏幕尺寸为480.您的UI似乎高于480.所以只根据屏幕高度调整了约束。

只需将高度约束添加到所有按钮,如果添加,则删除图像视图的高度约束。

为按钮添加高度和边距约束,仅为图像视图添加边距约束。它会根据屏幕大小调整大小。

希望它有所帮助。

答案 1 :(得分:1)

问题是内容不能适合给定的高度。

让我解释一下。 假设小装置的高度为480. UIImageView身高(内在)就是200.你有4 UIButton的身高说80. UILabel的身高说100。所以总计达620

在高度为480的视图中,高度620的视图无法适合(所有可见而没有剪裁)。

你需要。

  1. Scrollview(显示比可用宽度和/或高度更多的内容)
  2. 缩小内容的大小以适应480.要执行此操作,您可以固定任何/某些/所有的高度,以使此高度总和小于或等于480。