iOS:在自动布局下更改 UITableView 高度

Posted

技术标签:

【中文标题】iOS:在自动布局下更改 UITableView 高度【英文标题】:iOS: Change UITableView height under Auto Layout 【发布时间】:2012-10-10 16:13:24 【问题描述】:

如果您使用自动布局,有没有办法以编程方式更改 UITableView 的高度?我有一个必须使用自动布局的视图控制器。它还包含一个 UITableView,但表格视图似乎没有响应 setFrame 调用。

【问题讨论】:

【参考方案1】:

您绝对应该在 developer.apple.com 上观看有关自动布局主题的 WWDC 2012 视频。这些视频是:

第 202 课 - ios 和 OS X 的自动布局简介 第 228 课 - 掌握自动布局的最佳实践 第 232 课 - 示例自动布局

视频展示了如何使用可视化描述语言和 IB 在代码中设置约束。它们还涵盖了过渡到自动布局时的一些“陷阱”。

【讨论】:

有时您只需要认真学习并阅读手册/观看 WWDC 视频。它们不仅展示了如何在代码和 Interface Builder 中设置高度约束,还解释了您将遇到的问题(以及如何避免它们并节省时间和精力)【参考方案2】:

您可以通过编程方式定义自己的约束。有关如何执行此操作的更多信息,请参阅 Apple 在 NSLayoutConstraint 上的文档。

【讨论】:

啊,我明白了!我需要设置一个高度约束。谢谢!

以上是关于iOS:在自动布局下更改 UITableView 高度的主要内容,如果未能解决你的问题,请参考以下文章

具有自动布局的 iOS8 UITableView 在单元格上方有一个空白区域

如何在启用自动布局的情况下更改 iOS6 中的 UIView 大小?

iOS 8 Today Widget 使用自动布局来适应 UITableView 的高度

iOS UITableView 在设置 TableHeaderView 后以编程方式覆盖自动布局约束

具有自动布局的 UITableView 中的动态单元格高度

具有自动布局的 UITableView 在横向模式下不会填满屏幕。为啥?