iOS tableView添加子视图在cell的下面

本文详细介绍了在UITableView中如何在数据刷新后正确插入子视图,并确保其在滚动过程中始终显示在最上层。通过示例代码展示了如何监听滚动事件并在滚动时保持子视图的位置,同时指出了如果不进行滚动过程中的更新,可能导致的显示异常情况。
摘要由CSDN通过智能技术生成
    [self.tableView reloadData];

    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
        
        [self.tableView insertSubview:self.header_backgroundView atIndex:0];
    });

首先,在tableView刷新之后,调用         [self.tableView insertSubview:self.header_backgroundView atIndex:0]; 方法,

效果如图

然后,监听tableView的滚动事件,在滚动的过程中将子视图在插入到最底层,

        [scrollView vv_addObserver:scrollViewHelper forKeyPath:@"contentOffset" options:NSKeyValueObservingOptionNew withBlock:^(NSDictionary * _Nonnull change, void * _Nonnull context) {
            [scrollViewHelper scrollViewDidSroll:weakScrollView superViewInsetHeight:offset];
            [weakScrollView insertSubview:headerConfig.backgroundView atIndex:0];
        }];

这里和collectionView有点不同,需要在tableveiw滚动的过程中不停的调动改方法,不然的话会导致cell 被覆盖

如果在监听或者滚动的代理方法中不插入到底层,滚动过之后效果如图

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值