tigerAndBull / TABAnimated

A skeleton screen loading framework based on native for iOS. (一个由iOS原生组件映射出骨架屏的框架,包含快速植入,低耦合,兼容复杂视图等特点,提供国内主流骨架屏动画的加载方案,同时支持上拉加载更多、自定制动画。)
MIT License
3.37k stars 536 forks source link

在网络异常的情况,下拉刷新会异常显示 #215

Open Coder-Miao opened 1 year ago

Coder-Miao commented 1 year ago

网络: 应用启动前,开启飞行模式,无网络 启动逻辑: 冷启动,会触发接口,同时触发tableView的骨架屏start,设置6个cell 结果: 毫秒内出现骨架屏,骨架屏结束后,接着显示无数据的页面 bug: 当这个时候下拉刷新,发现dataSource没有变化,显示结束动画的cell 分析: 为啥dataSource没有变化,应该为0? 打印:_runIndexDict内容 "0":-100000,但是这个时候self.state = TABViewAnimationRunning 个人分析:由于断网,结束骨架屏很快,即使 self.state = TABViewAnimationEnd,但是weakTargetViewArray里的内容还没来的及释放,但是已经触发队列任务,productIndex++后,syncProductions会把state重置,所以重新下拉刷新的时候,state仍为running,最后原来dataSource