美文网首页
设置tableview滑动至无内容时停止滑动

设置tableview滑动至无内容时停止滑动

作者: hong_Lee | 来源:发表于2022-03-11 16:00 被阅读0次

效果为:使用tableView创建视图,顶部禁止滑动,当前视图滑动到底部之后,则停止滑动。

scrollViewDidScroll此方法为UIScrollView的代理方法,若使用tableView则需要遵循其delegate

-(void)scrollViewDidScroll:(UIScrollView *)scrollView{

    CGPoint offset = scrollView.contentOffset;//scrollview当前显示区域定点相对于frame顶点的偏移量

    CGRect bounds = scrollView.bounds;//原点

    CGSize size = scrollView.contentSize;//scrollview可以滚动的区域

    UIEdgeInsets inset = scrollView.contentInset;//scrollview的contentview的顶点相对于scrollview的位置

    CGFloat currentOffset = offset.y + bounds.size.height - inset.bottom;

    CGFloat maximumOffset = size.height;

    //currentOffset与maximumOffset的值相等时,说明scrollview已经滑到底部了,即偏移量达到最大值

    if (offset.y <= 0) { // 滑到顶部

        scrollView.contentOffset = CGPointMake(0, 0);

        return;

    }

    if (currentOffset >= maximumOffset) { //滑到底部

        CGPoint offset1 =CGPointMake(0,self.tableView.contentSize.height -self.tableView.frame.size.height);

        scrollView.contentOffset = offset1;

        return;

    }

}

相关文章

网友评论

      本文标题:设置tableview滑动至无内容时停止滑动

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