【问题标题】:When and where should I add a view to a UITableView's footer?我应该何时何地向 UITableView 页脚添加视图?
【发布时间】:2011-01-31 11:30:40
【问题描述】:

我仅通过代码填充 UITableViewController 的 UITableView。我希望在表格底部放置一个按钮,当用户滚动到表格底部时,该按钮会滚动到视图中。

在 UITableViewController 生命周期中的什么时候我应该使用按钮填充表格页脚? viewDidLoad?

附言我希望避免在 UITableView 中使用节页脚。

【问题讨论】:

    标签: iphone uitableview footer


    【解决方案1】:

    是的,viewDidLoad 是正确的地方。虽然这不是一成不变的规则 - 我在许多不同的情况下更改了页脚视图,例如在 didRotateFromInterfaceOrientation 中旋转之后。

    请注意,视图将重新定位到紧挨最后一行下方的位置,因此,如果您想为按钮提供边距或居中,我建议添加一个平面 UIVIew 作为页脚,然后将您的按钮添加到其中界面视图。

    【讨论】:

    • 感谢您的确认。 UITableView 的高度是否在 UITableViewController viewDidLoad 中已知?我问是因为在一种情况下,当表格占用的空间小于屏幕的整个垂直空间时,我需要将按钮定位在屏幕底部。
    • 直到 tableView 查询 dataSource 的行数和每行的大小才知道。我已经完成了您所描述的工作,而且工作量很大 - 超出了我在评论中所能描述的范围。简而言之,创建一个单独的方法 refreshFooter 并在每次表的高度可能发生变化时调用它 - 当您调用 reloadData、设备旋转等时。要计算表的高度,我建议从 self.tableView 中减去现有页脚的高度。内容大小。高度。要更改页脚高度,您需要将其删除并重新添加,您不能只更改页脚框架。
    【解决方案2】:

    是的,把它放在viewDidLoad。 Here 是一些示例代码。

    【讨论】:

      【解决方案3】:

      您可以将 UITableView 的 tableFooterView 属性设置为您的按钮。

      【讨论】:

        猜你喜欢
        • 2011-07-05
        • 2021-07-06
        • 2012-12-03
        • 2016-11-05
        • 2012-03-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-07-09
        相关资源
        最近更新 更多