我已经通过属性为tableView设置了自定义页脚:
self.tableView.tableFooterView = [self myCustomFooterView];
tableView在屏幕中填充几乎全高,因此底部只能看到1/3部分页脚。我已禁用弹跳,我无法将tableView滚动到底部以查看footerView。如果弹跳启用,那么我可以反弹并查看表格页脚,但表格在弹跳后返回到相同的位置。看起来tableView内容大小不包括我的footerView,这就是我无法滚动的原因。我想如何解决这个问题?
答案 0 :(得分:1)
JoshHinman是对的(“检查表视图的框架并确保它不大于屏幕。”)。我通过将MyViewController.view作为子视图添加到AnotherViewController.view来重用在AnotherViewController中包含tableView的MyViewController。因为AnotherViewController.view包含一些徽标图像,所以MyViewController.view.tableView被推到底部。当他指出,问题是我已经把tableView推得太多了:)
答案 1 :(得分:0)
您必须使用此数据源方法将页脚设置为
- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section
还要确保tableview的框架可以满足页脚在视图中可见
EDIt此方法有助于将页脚设置为每个部分,因此如果要在检查方法中返回的部分后将页脚设置为上次检查。
而且提问者意图这对我有用
UIView *view1 = [[UIView alloc]initWithFrame:CGRectMake(0, 0, 320, 40)];
[view1 setBackgroundColor:[UIColor redColor]];
[self.view addSubview:view1];
[self.table setTableFooterView:view1];
所以请检查[self myCustomFooterView];
答案 2 :(得分:0)
在设置UITableView
的页脚之后,还要编写以下代码:
CGSize wholesize = self.tableView.contentSize;
wholesize.height = self.tableView.contentSize.height + self.tableView.tableFooterView.frame.size.height;
self.tableView.contentSize = wholesize;
[tableView setContentOffset:CGPointMake(0, tableView.contentSize.height) animated:YES];
self.tableView.tableFooterView.userInteractionEnabled = YES;