如何控制每个下载请求的图像数量,其中每个额外的下载会继续前一个结束?
示例:一次下载30张图片;当用户滚动UICollectionView时,第二批进行延迟下载。
答案 0 :(得分:0)
您无法在一个请求中真正下载多个图像,除非您有一些非常不寻常的服务器基础结构可以执行自动平铺或其他操作。
大多数情况下,我建议使用为您提供此类功能的众多开源图像/集合视图子类中的一个。通常没有必要重新发明轮子。
也就是说,如果你真的想自己动手,你可以为前几个屏幕上的每个图像启动一个任务,然后根据滚动速度和预期停止点在滚动事件处理程序中启动新任务。如果视图在获得URLSession:dataTask:didReceiveResponse:completionHandler
调用其获取任务之前从屏幕的远端滚动,则可以取消获取。