开发者社区 问答 正文

ios关于下拉刷新问题:报错

大家好,ios开发中,UITableview的下拉刷新我用的是EGORefreshTableHeaderView组件,可该组件只支持手动下拉操作,我程序里需要用到自动显示加载动画,我自己做了扩展,可显示时总是与UITableView的reloadData冲突,图如下:


手动操作的效果是这样的:

为什么这个加载界面没有出来呢,我是根据EGORefreshTableHeaderView源码实现做的扩展,应该不会有这问题啊,代码如下:

[self setState:EGOOPullRefreshLoading];
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:0.2];
tableView.contentInset = UIEdgeInsetsMake(60.0f, 0.0f, 0.0f, 0.0f);
[UIView commitAnimations];
该问题只有在读取本地数据reloadData之后然后出现,如果本地数据少或没有(也就说空数据reloadData)不会存在该问题。

请问该如何避免呢?

展开
收起
kun坤 2020-06-07 20:33:12 522 分享 版权
1 条回答
写回答
取消 提交回答
  • 只需要用代码模拟一个滚动超出范围就能触发它刷新。

    另外,不要以为每次买3个雪糕,汽车都熄火,就认为汽车熄火是买雪糕导致的。和reloadData冲突的问题可能根本不是刷新的问题。


    ###### @xoHome 恭喜恭喜######回复 @啊达 : 谢谢,已经解决了!原来我用的是contentInset 换成contentOffset就可以了###### @xoHome xxx.contentOffset = CGPointMake(0, -99); -99改成你的类定义的合适的值######根据测试的结果是每次数据reloadData之后就不出现,所以初步定论了。请问如何模拟滚动超出范围呢?
    2020-06-07 20:33:18
    赞同 展开评论
问答分类:
问答标签:
问答地址: