根据表中单元格数的动态表格高度



>我正在开发应用程序,它将从 JSON 解析的数据放入 UILable 中,并且有详细信息,这些详细信息应该在表中。我使用的是Xcode 4.4.1,目标是iOS 4.3及更高版本。 表高度是动态开发的,如果在运行时更改单元格高度,则表的高度会根据高度而变化。我的问题是,现在我如何能够根据该表中存在的单元格数量更改表格高度,以便用户不必在表格中单独滚动。

试试这个,

TableView.frame=CGRectMake(10, 10, 200 ,MIN(40 * [YourArray count], 600));

假设40是单元格的高度,并且表格视图的最小高度为 600

如果所有单元格具有相同的高度,则Krunal解决方案将正常工作。但是,如果您有动态单元格高度,则必须执行以下步骤:

1-从情节提要中设置表格的高度约束。

2-从情节提要中拖动高度约束,并在视图控制器文件中为其创建@IBOutlet。

    @IBOutlet weak var tableViewHeightConstraint: NSLayoutConstraint!

3-然后,您可以使用以下代码动态更改表格的高度:

override func viewWillLayoutSubviews() {
    dispatch_async(dispatch_get_main_queue(), { () -> Void in
        super.updateViewConstraints()
        self.tableViewHeightConstraint?.constant = self.tableView.contentSize.height
    })
}

最新更新