【问题标题】:Extend SDWebImage Cache size扩展 SDWebImage 缓存大小
【发布时间】:2015-12-14 06:41:21
【问题描述】:

我知道SDWebImage 只能缓存 1000 张高分辨率图像,然后缓存将被清除。我在这里遇到了同样的问题,我的应用包含丢失的图像,这些图像未达到 500 个图像,但 SDWebImage 缓存被清除并再次从头开始缓存。

缓存数据或年龄对我来说真的无关紧要,我使用SDWebImage 加载图像如下,我只想缓存数据而不清除它:

 let url = NSURL(string: stringurl)
    cell.photos.sd_setImageWithURL(url, placeholderImage: nil, options:nil, completed: block)

在哪里以及如何设置尺寸,请提供明确的说明。

【问题讨论】:

  • 你的用户会接受吗?
  • 我认为我可以处理它,如果设备收到内存警告,那么我可以清除 SDWebImage 缓存! @kean

标签: ios swift caching sdwebimage


【解决方案1】:

您需要增加缓存大小。转到SDImageCache 并根据需要更改static unsigned long long MAX_DISK_USAGE

【讨论】:

  • SDWebimage缓存中只有以下变量:static unsigned char kPNGSignatureBytes[8] = {0x89, 0x50, 0x4E, 0x47, 0x0D, 0x0A, 0x1A, 0x0A};没有static unsigned long long MAX_DISK_USAGE这样的变量!!!
  • 可能在新版本中有所改变。但我仍然可以看到 /** * 缓存应该容纳的最大对象数。 /maxMemoryCountLimit; /* * 一张图片在缓存中保存的最长时间,以秒为单位 / maxCacheAge; /* * 缓存的最大大小,以字节为单位。 */ maxCacheSize;
  • 你可以提供去哪里编辑,我没有看到任何清楚的东西可以说我想让缓存大小接受 400 mb 或接受 2000 个图像?互联网上没有这样的资源可以帮助!所以我可以改变这个:- (NSUInteger)maxMemoryCountLimit { return self.memCache.countLimit; } 返回 50000?
猜你喜欢
  • 1970-01-01
  • 2015-04-03
  • 1970-01-01
  • 2012-08-09
  • 1970-01-01
  • 2017-11-01
  • 2011-12-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多