【问题标题】:How to get the image from in memory cache using SDWebImage?如何使用 SDWebImage 从内存缓存中获取图像?
【发布时间】:2016-03-03 00:13:04
【问题描述】:

我已经在 cellforrowatindexpath 方法中实现了 SDWebImage。这里的问题是,当我向下滚动 tableview 时,图像正在从 web 加载,这是预期的,但是当我向上滚动 tableview 时,图像再次下载。有什么办法可以摆脱这个问题。我不想从 url 超时加载图像(因为 Web 服务调用有使用限制)。我选择将 SDWebImage API 用于内存缓存,这样一旦加载图像,它们就会从缓存中获取并显示在 UI 上,而不是每次都调用 Web 服务。这是我的代码:

[cell.placeImage sd_setImageWithURL:url placeholderImage:nil options:SDWebImageCacheMemoryOnly];

以上行是该方法中的唯一代码。请帮我。 任何形式的帮助表示赞赏。我在这个社区看到过其他问题,但没有人说如何从缓存中获取图像。

【问题讨论】:

  • 只要使用[cell.placeImage sd_setImageWithURL:url placeholderImage:nil]
  • 所以你的意思是我必须使用同一行代码?
  • 可以,但不需要使用选项...
  • @FahimParkar 还有一件事我被卡住了,如何检查前提条件我的意思是说如果(图像在缓存中)从缓存中提取图像的代码行这是我的位置将放置您的行代码,并在 else 语句中放置我提出此问题的代码行。你知道 if 语句中应该有什么吗?好吧,我正在尝试在 cellforrowatindexpath 中编写此代码。
  • 只写我说的语句,它会自动处理......它检查它是否在本地,它显示本地图像,否则它在本地下载图像然后显示它......

标签: ios objective-c caching sdwebimage


【解决方案1】:

要刷新图像,您应该使用选项:SDWebImageRefreshCached

[imageView sd_setImageWithURL:url placeholderImage:nil options:SDWebImageRefreshCached];

【讨论】:

  • 就目前而言,我刚刚开始设置从缓存中提取图像的条件,如果它不在缓存中,那么我需要发出网络请求。跨度>
猜你喜欢
  • 1970-01-01
  • 2012-10-13
  • 1970-01-01
  • 2019-02-19
  • 2023-04-03
  • 2018-07-12
  • 2014-04-15
  • 2016-08-01
  • 1970-01-01
相关资源
最近更新 更多