根据节数更新tableView高度

时间:2014-05-29 07:34:45

标签: ios iphone objective-c uitableview ios7

我想根据使用自动布局的部分数量调整 tableview height

第一部分和第二部分的vary.Data部分的数量不固定。 每个部分都有不同的数据。

在TableView下面,它们是其他组件(UILabelUIButton)并且它们是固定的,但如果tableView缩小或扩展(TableView max height =视图高度),则调整它们的位置。

我不想给出静态高度。

UITableView约束的高度将在viewDidLoad

中更改

如何实施?

2 个答案:

答案 0 :(得分:0)

我认为只有autoLayout才能实现这一点。我相信您需要进行一些计算,并修改已在IB中设置的约束或自己在代码中添加它们。

tableView基本上是scrollView,在autoLayout中使用时,您必须提供2条信息

  1. tableView / scrollView
  2. 的大小
  3. contentView
  4. 的大小

    使用tableView时,会为您处理2,但您必须为每一行指定一个大小,autoLayout可以使用heightForRowAtIndexPath回调和{{systemLayoutSizeFittingSize:UILayoutFittingCompressedSize为您计算1}}方法。

    这两个方面的处理方式不同,我不知道加入它们的方法。据我所知,它的设计是为了让你告诉scrollView它的大小/形状是什么,并给它内容,如果它也有,它会滚动,如果它没有,它就会滚动,它不知道内容大小,以便自己调整大小。

答案 1 :(得分:-1)

尝试使用Heightforrowatindexpath委托制作大小。然后根据你为该部分提到的那个高度使用自动布局。更好地通过代码改变它对于这种情况最有用。