解决collectionview reloaddata时发生的闪烁问题

解决方案

方式1

        [UIView performWithoutAnimation:^{
             //刷新数据
        }];
        [UIView performWithoutAnimation:^{
                   //刷新数据
        }];

方式2

     [CATransaction begin];
 [CATransaction setDisableActions:YES];
 //刷新数据
 [CATransaction commit];

原因:

是由于iOS中隐式动画的存在,当对一个View中非Root Layer的部分属性进行修改时,默认会自动产生一些动画效果。

在iOS提供的封装好的View(tableview,collection等等)都存在茫茫多的隐式动画,在很多时候会让数据的更新更加平滑,但是也在一部分时候对用户体验造成了不良的影响。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥ios动画全貌。在这里你可以看...
    每天刷两次牙阅读 8,715评论 6 30
  • 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥iOS动画全貌。在这里你可以看...
    F麦子阅读 5,298评论 5 13
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 179,873评论 25 708
  • 事件:百度外卖低价卖出 昨天,《第一财经》率先爆料:饿了么最快本周收购百度外卖,后者将独立运营一年。随后正式并入饿...
    慎思明辨_ym阅读 639评论 2 4
  • 李尚龙在《你所谓的稳定,不过是在浪费生命》中,强调体制内的工作不稳定,自己不断学技术,有安身立命的本事才是稳定。并...
    一枚书女阅读 603评论 4 5

友情链接更多精彩内容