[分享]iOS开发 - 实现UITableView Plain SectionView和table不停留一起滑动

这个代码是通过scroll偏移量来监听和改变你的tableview的contentInset

// 去掉UItableview headerview黏性(sticky)
    -(void)scrollViewDidScroll:(UIScrollView *)scrollView
    {
        CGFloat sectionHeaderHeight = 40;
        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);
        }
    }

和第一个没太大本质区别,在自定义headSectionView中重写setframe方法来重载table的section

-(void)setFrame:(CGRect)frame{
    CGRect sectionRect = [self.tableView rectForSection:self.section];
    CGRect newFrame = CGRectMake(CGRectGetMinX(frame), CGRectGetMinY(sectionRect), CGRectGetWidth(frame), CGRectGetHeight(frame)); [super setFrame:newFrame];
}

总结:
网上很多问题在问如何解决随tableview一起滑动,想group样式一样实现粘性的问题。这个setframe重载section很使用,在footview也一样。
这里有TablePlainSectionDemo:https://github.com/rongtian/T… 可以直接下载看下。希望能帮你解决类似次问题。

分享来源:
http://blog.sina.com.cn/s/blo…

    原文作者:ShevaKuilin
    原文地址: https://segmentfault.com/a/1190000004517257
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞