美文网首页iOS 技巧
iOS开发中判断UITableView滑动到哪个分区

iOS开发中判断UITableView滑动到哪个分区

作者: 梁森的简书 | 来源:发表于2020-08-24 12:10 被阅读0次
    0.tableview.jpg

    在一个VC上添加一个TableView,当前VC没有navigationBar,如图所示,TableView自动偏移了一个状态栏的高度,且是负值。

    判断该tableView滑动到了哪个分区?

    我们可以通过scrollViewDidScroll方法来确定tableview的偏移量,可以通过tableview的rectForSection方法来获取某个分区的rect从而获取该分区的y坐标。
    当tableview滑动到某个分区的的顶部的时候,其偏移量始终比这个分区的纵坐标少一个状态栏的高度(只是本例子)。那么我们就可以通过偏移量和某个section的纵坐标来判断tableview滑动了哪个分区。

    代码:

      - (void)scrollViewDidScroll:(UIScrollView *)scrollView{
    CGFloat statusH = [UIApplication sharedApplication].statusBarFrame.size.height;
    CGFloat bottomCellOffset = [self.tableView rectForSection:2].origin.y - statusH;
    if (scrollView.contentOffset.y >= bottomCellOffset) {   // 第二个sectionHeaderView滑动到顶部
    NSLog(@"第二个sectionHeaderView滑动到顶部");
    }
    }
    

    相关文章

      网友评论

        本文标题:iOS开发中判断UITableView滑动到哪个分区

        本文链接:https://www.haomeiwen.com/subject/udxnjktx.html