UITableViewController上是否可能有“粘性”页脚?

时间:2018-07-19 13:35:17

标签: ios swift

我正在尝试建立一个结帐屏幕,允许用户输入卡的详细信息等。我想将“用Apple Pay进行购买”或“其他”按钮固定在UITableViewController的底部,以便随时都能轻松看到。

我知道嵌套在UITableView中的UIViewController是可能的,但是我只是想知道使用UITableViewController是否可以得到类似的结果?

这是Apple Store应用的screen recording,其中显示了所需的行为。 (将于8月18日到期)

5 个答案:

答案 0 :(得分:1)

您可以使用表视图数据源方法,例如:

func tableView(_ tableView: UITableView, viewForFooterInSection section: Int) -> UIView? {
    // Write your code for sticky design 
}

func tableView(_ tableView: UITableView, heightForFooterInSection section: Int) -> CGFloat {
    return 100
}

这可能会对您有所帮助。谢谢

答案 1 :(得分:0)

有很多原因,其中之一就是不使用UITableViewController且不使用手动添加了表视图的常规UIViewController的原因。实际上,UITableViewController的唯一真正原因是当您要使用静态单元格而不是动态原型时。

答案 2 :(得分:0)

可能值得将UITableViewController移到嵌入式视图中。这样,您可以将所需的任何内容覆盖在表格视图的底部。

答案 3 :(得分:0)

tableFooterView仅在最后一个单元格之后可见。开箱即用的解决方案不适用于此问题。如果要添加节脚注,您将面临两个可能的问题,即,如果您有多个节并且内容小于表格视图的高度。唯一可行的解​​决方案是在表视图上方添加UIView

答案 4 :(得分:0)

您可以通过在tableview控制器ui视图控制器视图上添加一个额外的视图来实现。您必须为此获得关注视图层次结构。