collectionView reloadData 之后 cell消失

来源:互联网 发布:java多用户商城源码 编辑:程序博客网 时间:2024/05/20 23:07

最近在实现一个功能, 将网络图片等比例显示出来; 由于使用的是collectionview, 在cell中得到图片的大小,需要刷新整个视图; 

图片是正常的可以等比例显示, 滑动之后,有部分cell消失不显示了;

       在开始我以为是重用出错了, 在进行调试的时候,打印cell,发现hidden属性是YES; 那些消失的cell时隐藏了; 直接设置cell的hidden属性不起作用; 

        在网上进行大量搜索之后, 找到了解决方法http://www.cnblogs.com/elladu/p/5953261.html; 这篇博客中提出的解决方法刚好是我需要的; 使用之后,cell正常显示了;


       虽然问题是解决了,但是究竟是什么原因导致的,还是不明白;  

  猜测:

collectionview第一次加载,加载到图片 执行reloadData方法, 也就是说在执行reloadData还没有结束是,又执行reloadData;  而采用

   dispatch_async(dispatch_get_main_queue(), ^{

                [collectionView reloadData];

            });

这种方式执行, 应该是在第一个reloadData方法之后执行第二个reloadData方法;

以上是只我自己的猜想,有很大可能是错误的. 问题虽然解决了,但是原因并不知道;  如果有哪位同学知道, 可以留言,帮我解惑; 

谢谢.  




阅读全文
0 0
原创粉丝点击