带有 UIScrollView 的粘滞页脚

Posted

技术标签:

【中文标题】带有 UIScrollView 的粘滞页脚【英文标题】:Sticky footer with UIScrollView 【发布时间】:2018-02-10 19:43:03 【问题描述】:

需要使用UIScrollView 实现粘性页脚行为,我实际上想复制UITableView 的部分页脚视图(红色视图)的行为。 (请参考下面的gif url

https://imgur.com/a/45Urz

我尝试使用以下约束,我们需要 Bottom Container 具有粘性。(它必须像 https://imgur.com/a/45Urz gif 中的红色部分页脚一样)

【问题讨论】:

为什么要把它放在 scrollView 里面?你还没出去??? 您可以使用this post.中解释的表格视图来实现此效果 【参考方案1】:

您可以通过两个约束来完成此操作。

第一个约束 连接在粘性视图的顶部和容器的底部之间。此约束应为less than or equal 类型(第一项是粘性视图),优先级为required。它将允许内容的底部点低于它但不能高于它。

第二个约束 连接在粘滞视图的底部和滚动视图容器的 底部之间,或者连接滚动视图底部的任何位置。这会将粘性视图锚定到滚动视图之外的一个点。输入equal 和优先级high。它将与另一个约束竞争,但只要满足第一个条件,它就会获胜。

当然,您还需要像往常一样为粘性视图设置其他约束; widthheightx 位置。请记住,滚动视图有点特殊,因此您不能只将左右边缘绑定到滚动视图的边缘,还需要宽度和高度。如果不确定,请使用粘性视图的剩余约束执行此操作:

height 设置为您想要的高度值 将width 设置为滚动视图的width 设置滚动视图的前导和尾随

【讨论】:

屏幕底部的视图应与顶部视图(容器视图)一起向上拖动,例如当表格视图下方没有更多行时向上拖动红色视图https://imgur.com/a/45Urz

以上是关于带有 UIScrollView 的粘滞页脚的主要内容,如果未能解决你的问题,请参考以下文章

下拉菜单打破粘滞页脚

部分不适用于 CSS 粘滞页脚

Flex Box 粘滞页脚内容溢出

为啥我的 Flexbox 粘滞页脚在 Safari 中不起作用?

当页脚位于其他 div 块内时出现粘滞页脚问题

html 粘滞的页脚标记。