我正在使用故事板作为导航控制器流的一部分来构建表视图。只要所有单元格都可以显示在一个页面上,一切都很顺利。问题是,如果屏幕上有更多的单元格,则某些单元格隐藏在屏幕底部之下。我可以通过利用弹跳效果进一步向下滚动来看到它们。一旦我释放屏幕,底部单元就会在屏幕底部反弹。
我认为问题是表格视图上的框架尺寸。我没有找到通过故事板改变它的方法,并试图动态地改变尺寸:
self.view.frame = CGRectMake (0.0, 20.0, 320.0, 230.0);
不幸的是,这对viewWillAppear和viewDidLoad都没有影响。使用上面设置的230点高度,列表应该很容易显示,有480 - 44(导航栏)= 436点为表。
我做错了什么?我是否将帧高设置在错误的位置(viewWillAppear / viewDidLoad)?当视图高度显示为灰色时,有没有办法在界面构建器中指定高度?
深入研究自动调整的问题,没有显示该字段的原因是,启用了iOS 6功能“使用Autolayet”。然后IB中不显示自动调整大小的框。禁用“使用Autolayet”实际上解决了问题,滚动现在已经与屏幕底部对齐。
答案 0 :(得分:5)
为您的UITableView使用灵活高度。
它会根据父视图高度的变化调整表格大小。
编辑:自动调整设置为ON时,不会显示自动调整大小的框和属性。
答案 1 :(得分:0)
您的桌面高度大于屏幕高度:将高度设置为屏幕高度减去顶部的任何标签
将其设置为100以进行测试以查看我的意思。
执行viewdidload并确保在
之后不要更改它答案 2 :(得分:0)
我不知道您当前的视图布局,但如果您尝试在视图控制器中实现UITableview,那么另一种方法是添加一个容器,其中tableview放置在视图中。添加类tableview的文件,然后使用新添加的tableview的UITableview Controller类连接容器。 它应该工作正常。