設置ios tableView的section Header & Footer跟著tableView一起滾動

//設置tableView的Sectionheader不吸附

- (void)scrollViewDidScroll:(UIScrollView *)scrollView {

CGFloat sectionHeaderHeight = SectionHeight;

if (scrollView.contentOffset.y<=sectionHeaderHeight&&scrollView.contentOffset.y>=0) {

scrollView.contentInset = UIEdgeInsetsMake(-scrollView.contentOffset.y, 0, 0, 0);

} else if (scrollView.contentOffset.y>=sectionHeaderHeight) {

scrollView.contentInset = UIEdgeInsetsMake(-sectionHeaderHeight, 0, 0, 0);

}

}

//設置tableView的SectionFooter不吸附

- (void)scrollViewDidScroll:(UIScrollView*)scrollView {

CGFloatsectionFooterHeight =40;

CGFloatButtomHeight = scrollView.contentSize.height -self.tableView.frame.size.height;

????if????(ButtomHeight-sectionFooterHeight <= scrollView.contentOffset.y && scrollView.contentSize.height >0) {

?????????scrollView.contentInset =UIEdgeInsetsMake(0,0,0,0);

????}else

????{?

?????scrollView.contentInset =UIEdgeInsetsMake(0,0, -(sectionFooterHeight),0);

????}

}



//設置tableView的SectionHeader & SectionFooter不吸附

CGFloat sectionHeaderHeight = 44;//頭

CGFloat sectionFooterHeight = 64;//腳

CGFloat offsetY = scrollView.contentOffset.y;

if (offsetY >= 0 && offsetY <= sectionHeaderHeight)

{

?????scrollView.contentInset = UIEdgeInsetsMake(-offsetY, 0, -sectionFooterHeight, 0);

? ?}else if (offsetY >= sectionHeaderHeight && offsetY <= scrollView.contentSize.height - scrollView.frame.size.height - sectionFooterHeight)

{

scrollView.contentInset = UIEdgeInsetsMake(-sectionHeaderHeight, 0, -sectionFooterHeight, 0);


}else if (offsetY >= scrollView.contentSize.height - scrollView.frame.size.height - sectionFooterHeight && offsetY <= scrollView.contentSize.height - scrollView.frame.size.height)

{

scrollView.contentInset = UIEdgeInsetsMake(-offsetY, 0, -(scrollView.contentSize.height - scrollView.frame.size.height - sectionFooterHeight), 0);

}

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容