我正在制作一个演示APP,该APP从RESTFul服务中获取图像并将其显示在UICollectionView
因此,我正在进行网络调用以通过willDisplay
委托方法获取图像。
但是在WWDC关于UICollectionView
的讨论中,主持人说,配置单元的所有繁重工作必须在数据源的cellForItemAt
方法中完成,而最小配置应在willDisplay
中完成方法。
但是在数据源中进行网络调用感觉不对,因为在退出单元格之前,我必须等待网络调用完成。
任何人都可以指出两种方法的优缺点。
哪种方法是进行网络调用的最佳位置。
答案 0 :(得分:0)
最好的位置是cellForItemAt
,因为它被调用的时间早于willDisplayCell
,这样可以节省时间,而且您不必等待,因为图像是用{{ 3}}或SDWebImage也为您缓存,因此,如果用户快速滚动,对于同一张图片,下载不会再次发生