2012-08-16 134 views
0

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

回答

0

试试这个,

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

假设40是你的高度,并为您的实现代码如下最小高度为600

+0

您好,感谢您的答复,但对我来说,单个细胞的高度也各不相同:

@IBOutlet weak var tableViewHeightConstraint: NSLayoutConstraint! 

3-然后你可以dynamicaly使用此代码改变高度表的运行时间内的单元格。所以我不能给静态细胞高度。我已经显示更多的按钮,相应地增加/减少细胞高度。 – Pawriwes 2012-08-16 06:21:14

+0

确定你的细胞高度,并把它代替'40'。 – Krunal 2012-08-16 06:29:02

0

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

1-设置故事板中表格的高度限制。

2-从故事板拖动高度约束并在viewController文件中为其创建@IBOutlet。根据内容

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