填充UIScrollView的垂直空间

时间:2018-04-24 12:25:43

标签: ios xcode user-interface

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

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

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

enter image description here

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

1 个答案:

答案 0 :(得分:6)

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

1)创建您的滚动视图并将其固定到所有方面: enter image description here

2)将一个视图作为内容视图添加到scrollview并将其固定: enter image description here

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

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

5)最后,在标签和按钮之间添加垂直间距约束。将按钮和标签之间所需的最小空间量设置为此约束的常量,例如8,并将关系设置为大于或等于: enter image description here

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

enter image description here