一: 2个都悬停 UITableViewStylePlain
二:2个都不悬停 UITableViewStyleGrouped
以下代码都写在scrollViewDidScroll代理方法中
三:Header不悬停,Footer悬停,使用UITableViewStylePlain
这里的50是Header的高度,根据需要自行改变
ifscrollView.contentOffset.y<=50&& scrollView.contentOffset.y>=0{
scrollView.contentInset= UIEdgeInsetsMake(-scrollView.contentOffset.y,0,0,0)
}elseifscrollView.contentOffset.y>=50{
scrollView.contentInset= UIEdgeInsetsMake(-50,0,0,0)
}
四:Header悬停,Footer不悬停,使用UITableViewStylePlain
这里需要在viewDidLoad中先加一句,作用是在页面滚动之前就先隐藏第一个section的Footer,50是Footer的高度,根据需求自行改变
self.tableView.contentInset=UIEdgeInsetsMake(0,0,-50,0)
let rectInTableView =self.tableView.rectForRow(at: IndexPath(row:0,section:0))
let rect =self.tableView.convert(rectInTableView,to:self.tableView.superview)
ifrect.origin.y> -self.tableView.contentSize.height{
self.tableView.contentInset= UIEdgeInsetsMake(0,0, -50,0)
}
网友评论