【发布时间】:2017-03-14 19:07:34
【问题描述】:
我们的 UITableView 存在于 ViewController(而不是 TableViewController)上。我们在运行时用两行填充它。当我们设置高度约束时,表格看起来很好。当我们不设置高度约束时,表格完全不会出现。如何设置 UITableView 以动态设置其高度?
我已经看到了关于动态设置行高(效果很好)但不是关于实际表格高度的线程。关于这个特定点有一些线程,但似乎没有一个对我有用。
解决方案更新:按照 Robotic Cat 的建议,我们在 Storyboard 中的 UITableView 上设置了高度限制(我们已经有了),然后按 Ctrl 拖动以在我们的控制器。根据 Vignesh 的回答,我们在 viewWillAppear 中执行以下代码:
tableViewHeightConstraint.constant = tableView.contentSize.height
请注意,在执行上述代码之前,我们以相同的方法调用reloadData() 来填充我们的表格。
【问题讨论】:
-
约束只是您可以通过
IBOutlet引用的另一个对象。在 Storyboard 中设置视图控制器约束,然后在UIViewController子类中创建到UITableView高度约束的出口(或控制UITableView高度的约束,例如到屏幕底部的距离)。然后为高度设置适当的值(如固定值或屏幕比例)。
标签: ios swift uitableview