填充UIScrollView的垂直空间

Har*_*ikk 1 user-interface xcode ios

我正在制作一个有a的布局,UIScrollView我想做的是将一个标签固定在可滚动区域的顶部,并将一个固定在底部的按钮,两者之间的空间最小.

我们的想法是,如果标签的高度增加,按钮将被向下推,这样用户就必须向下滚动才能到达它.但是,如果标签很短,则它与按钮之间的空间应该增大,以使按钮停留在可滚动区域的底部.

下面是我的意思的粗略模型:

在此输入图像描述

注意:第二个镜头是在完全滚动到底部之后UIScrollView,我希望滚动到顶部时按钮被隐藏; 即 - 只需将按钮放在滚动视图下方就不是一种选择.

Kév*_*vin 7

您只需使用autolayout即可获得所需的结果,而无需通过代码更改约束.步骤如下:

1)创建您的滚动视图并将其固定到所有方面: 在此输入图像描述

2)将一个视图作为内容视图添加到scrollview并将其固定: 在此输入图像描述

3)您的标签和按钮将添加到此contentView,但在我们执行此操作之前,我们必须向contentView添加2个附加约束.创建contentView的宽度和高度约束作为SafeArea的约束.您应该将等高度约束的优先级设置为低(250): 在此输入图像描述

4)在contentView中添加标签和按钮.标签固定在顶部,按钮固定在底部;

5)最后,在标签和按钮之间添加垂直间距约束.将按钮和标签之间所需的最小空间量设置为此约束的常量,例如8,并将关系设置为大于或等于: 在此输入图像描述

有了这个,如果标签的高度增加,按钮将被向下推,这样用户就必须向下滚动才能到达它.

在此输入图像描述