使用 SDWebImage 为 UICollectionView 可重用单元从路径加载图像 - Swift
Posted
技术标签:
【中文标题】使用 SDWebImage 为 UICollectionView 可重用单元从路径加载图像 - Swift【英文标题】:Loading images from Paths using SDWebImage for UICollectionView Reusable Cells - Swift 【发布时间】:2016-08-15 10:02:39 【问题描述】:我将问题编辑为更具体: 我需要用多个可重用的集合单元完成一个 UICollectionView,每个集合单元都有一个使用 SDWebImage 从路径加载的 UIImage。 我希望加载所有图像,然后立即在集合视图中显示所有图像。 我的问题是:当我在函数内使用 sd_setImageWithURL 时:
func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell
图像不加载。我试图在任何地方重新加载集合的数据 - 但它不会加载它们。
SDWebImage 将图像加载到集合视图并使其显示的正确方法是什么?
提前感谢所有花时间阅读和帮助的人:)
【问题讨论】:
你的问题很广泛,但基本上你需要开始下载所有图像,一旦它们全部下载完毕,然后将适当的数据放入驱动你的 collectionview 的数组中并重新加载集合视图。完成所有操作后,您可以使用 dispatch_group 和 dispatch_group_notify 加载集合视图 感谢 Paulw11 的快速回复 :) 我现在试试 【参考方案1】:阅读:
-
Swift: load images Async in UITableViewCell
Best way to load image url swift 2 in UITableView
how to implement lazy loading of images in table view using swift
tableview中加载图片的主要思路:
-
生成图片 urls/paths 数组
开始在实用程序线程 (GCD) 中加载图像
用不带图像的单元格填充 tableView
收到事件时在主线程中更新单元格 (uitableView.visibleCells)*
*通常的事件类型:
-
当加载一个图像或所有图像时
UITableViewDelegate 协议事件 (https://developer.apple.com/library/ios/documentation/UIKit/Reference/UITableViewDelegate_Protocol/)
触摸事件
过渡事件
【讨论】:
哇,感谢您提供如此详尽的答案。欣赏它以上是关于使用 SDWebImage 为 UICollectionView 可重用单元从路径加载图像 - Swift的主要内容,如果未能解决你的问题,请参考以下文章
使用 SDWebImage 下载的图像的 UIImageView 幻灯片