如何自动调整UITableView的高度?

时间:2013-03-16 19:28:13

标签: ios objective-c uitableview xamarin.ios

我有UITableView Style=Grouped(虽然没有任何分组,但我喜欢它产生的风格)。通常这个UITableView有2行或3行,具体取决于具体情况。

如何根据行数自动调整UITableView?请注意,使用Style=Grouped时,UITableView顶部会有一大块空白区域。我希望在UITableView的底部有一个类似的空间。

我是用Xamarin / C#做的,但Objective C答案也很好。

2 个答案:

答案 0 :(得分:1)

UITableView扩展UIScrollView所以在重新加载表视图后使用 - [UIScrollView contentSize]和 - [UIScrollView contentInset]来获取内容的高度然后设置表视图的帧高

答案 1 :(得分:0)

UITableViewDelegate Protocol中的方法可以在表格视图中指定每个对象的高度(可以直接使用类似heightForRowAtIndexPath的内容,也可以间接指定viewForHeaderInSection之类的内容 - 您可以在哪里返回一个具有size属性的视图,无论你想要什么。 Height of header + Height of footer + (height of cell * number of cells)将为您提供在不滚动的情况下安装整个表所需的空间。

如果您没有实施任何这些方法,则当前(iOS 6)默认值分别为30,18和44.