UITableView中Header和Footer悬停方式

一: 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)

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容