0
点赞
收藏
分享

微信扫一扫

iOS UITableView 指定组头悬停位置


悬停位置

当​​UITableView​​​占满屏幕时
组头默认是在​​​顶部​​​悬停
在机型 ​​​iPhone X​​​ 上
会被顶部的​​​刘海​​给挡住

这效果显然不能直视~
理想的效果是:
在​​​导航​​下方悬停

(导航是个自定义的视图
带有渐变效果)

contentInset

官方文档:
​​​The custom distance that the content view is inset from the safe area or scroll view edges.​

参考代码:

- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
CGFloat offsetY = scrollView.contentOffset.y;
CGFloat tableHeaderViewHeight = CGRectGetHeight(self.tableView.tableHeaderView.bounds);
// 差值 = 头视图高度 - 导航条高度
if (offsetY >= tableHeaderViewHeight - TopBarHeight) {
// 顶部偏移距离:导航条高度
self.tableView.contentInset = UIEdgeInsetsMake(TopBarHeight/*用你自己定义的宏*/, 0, 0, 0);
} else {
self.tableView.contentInset = UIEdgeInsetsZero;
}
}

参考

​​https://www.jianshu.com/p/0fba49dd13c6​​

有趣的验证码输入框

​​https://github.com/xjh093/JHVerificationCodeView​​


举报

相关推荐

0 条评论