ios - 缓存 tableView Cell 数据

标签 ios swift uitableview uiimageview custom-cell

在我的应用程序中,我正在使用 URL 下载一些图像并将它们放在 cell.imageView[indexPath.row] 中(这是一个内部带有 imageView 的自定义单元格)。 我一次可以看到两个单元格,我注意到方法

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> CustomCell {
}

每次显示单元格时都会调用它。所以我的应用程序继续从服务器下载图像并且应用程序结果非常慢。

我想知道是否可以缓存我已经看到的单元格数据,这样如果我在 tableView 中向上滚动就不需要重新下载图像!代码说话 我只想在向下滚动表格而不是我已经看到的单元格时调用上面编写的 func

最佳答案

你可以,但需要相当多的工作,所以 SDWebImage 的好人创建一个库来下载/缓存/获取/管理您的图像 URL 只需将您的图像获取代码与 UIImageview 的此类交换,这将提供 UIImageView.sd_ 方法。

还有单元格实现 prepareForReuse() 并使用 sd_cancel 取消获取

关于ios - 缓存 tableView Cell 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36646968/

相关文章:

ios - 通过带字幕的 URL 方案流式传输到 iOS 版 VLC

ios - 响应式 3D Touch

ios - ScrollViewDelegate 不调用 scrollViewDidScroll 或 scrollViewWillBeginDragging

ios - 我们如何创建一个更大的中心 UITabBar Item

iphone - iOS - 将 UIImageView 移动到动画后重置到原始位置,为什么?

generics - Swift:使用通配符作为泛型类型参数

ios - UITableViewCell 内的 drawRect UIView 可调整高度

iOS uitableview reloadData 不太好用

ios - 让 Sharekit 工作

ios - 如何在 CABasicAnimation 之后使 UI 对象响应