Objective c 滚动时UITableView节页脚重叠

Objective c 滚动时UITableView节页脚重叠,objective-c,ipad,Objective C,Ipad,我有一个UItableview,我有一个程序化的页眉和页脚部分 最初,我在scroll上遇到了sectio头重叠的问题,我使用scrollViewDidScroll代理解决了这个问题 - (void)scrollViewDidScroll:(UIScrollView *)scrollView { heightForHeader = 40.0; if (scrollView.contentOffset.y<=heightForHeader&&scrollVie

我有一个UItableview,我有一个程序化的页眉和页脚部分

最初,我在scroll上遇到了sectio头重叠的问题,我使用scrollViewDidScroll代理解决了这个问题

- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
    heightForHeader = 40.0;
    if (scrollView.contentOffset.y<=heightForHeader&&scrollView.contentOffset.y>=0) {
        scrollView.contentInset = UIEdgeInsetsMake(-scrollView.contentOffset.y, 0, 0, 0);
    } else if (scrollView.contentOffset.y>=heightForHeader) {
        scrollView.contentInset = UIEdgeInsetsMake(-heightForHeader, 0, 0, 0);
    }
}
-(无效)scrollViewDidScroll:(UIScrollView*)scrollView{
收割台高度=40.0;
if(scrollView.contentOffset.y=0){
scrollView.contentInset=UIEdgeInsetsMake(-scrollView.contentOffset.y,0,0,0);
}else if(scrollView.contentOffset.y>=heightForHeader){
scrollView.contentInset=UIEdgeInsetsMake(-heightForHeader,0,0,0);
}
}
现在,下一个问题是滚动时部分页脚重叠


你能帮我吗?

你能为页眉和页脚设置自定义高度吗

您的表视图委托应实现以下方法:

- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section

- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section
它应该返回适当的值


如果返回的值比页眉和页脚视图的值小,那么它们可能会重叠。

您正在寻找这样的结果:我已经测试过了,它可以正常工作

CGFloat sectionFooterHeight = 40; CGFloat tableViewHeight = self.tableView.frame.size.height; if (scrollView.contentOffset.y=tableViewHeight) { scrollView.contentInset = UIEdgeInsetsMake(0, 0,-scrollView.contentOffset.y, 0); } else if (scrollView.contentOffset.y>=sectionFooterHeight+self.tableView.frame.size.height) { scrollView.contentInset = UIEdgeInsetsMake(0, 0,-sectionFooterHeight, 0); } CGFloat截面高度=40; CGFloat tableView高度=self.tableView.frame.size.height; if(scrollView.contentOffset.y=tableViewHeight){ scrollView.contentInset=UIEdgeInsetsMake(0,0,-scrollView.contentOffset.y,0); }else if(scrollView.contentOffset.y>=sectionFooterHeight+self.tableView.frame.size.height){ scrollView.contentInset=UIEdgeInsetsMake(0,0,-sectionFooterHeight,0); }
我今天在小屏幕iphone上遇到了同样的问题。对于那些在页眉/页脚视图较大的部分中处理单元格数较少的tableview的人来说,这可能会有所帮助


首先,页眉和页脚不会沿着单元格滚动,除非滚动时没有更多的单元格可查看。所以,如果你只有两三个单元格和一个大的页脚视图,那么它肯定会超过一圈。解决这个问题的一种方法是添加页脚视图作为节的最后一个单元格。这只是我的工作。

我有页眉和页脚。但这不起作用。我有类似的代码用于标题滚动,我把它放在
scrollviewdidcoll
中,并将您的代码放在该代码下面。因此scrollview无法正常滚动。有什么建议吗?我建议您制作三个不同的UITableViewCell,并将另外两个用于索引0和lastIndex,而不是页眉和页脚。