我从苹果官网下载了名为"IKImageKit Demo“的IKImageBrowserView示例。
但我发现了一个问题。
例如:
当我从名为"A“的文件夹导入图像时,我删除了一个图像。
然后导入其他图像(名称与删除的图像相同),其中的缩略图
IKImageBrowser不会改变。
我该如何解决这个问题??谢谢!
视频显示:http://www.youtube.com/watch?v=f3Jue9wOdUI
发布于 2010-08-30 13:23:48
更新:哇,老帖子。看起来文档在我发布后更新了一段时间;正如其他答案所建议的那样,看起来您需要增加图像的imageVersion才能从缓存中更新图像。
在仔细考虑了这个问题近三个小时后(一旦我开始思考,它也真的困扰着我!),我得出了一个令人遗憾的结论,那就是IKImageKit处理图像的方式存在错误。IKImageBrowserView有一个图像和缩略图的缓存,从我所拥有的实验数据来看,我猜它只是基于磁盘上的位置缓存图像,而不是基于图像数据(所以它可以懒惰地加载数据),所以即使实际的图像数据可以更改,重新加载相同的文件位置也不会更新图像本身。
当然,我可能完全错了-这并不会让我感到惊讶,因为实际上没有关于这个问题的文档,所以我只有Instruments和应用程序本身的结果来指导我-但我给你的建议是暂时忽略这个问题,因为你对它无能为力,并可能向苹果公司提交错误。
当然,如果任何人可以介绍关于这一点的其他证据,请!我很想知道更多关于它的信息。
祝好运!
发布于 2010-11-13 08:24:28
我偶然发现了一份参考资料,上面说IKImageBrowserView使用的内部缓存通过ImageUID查找缩略图。因此,如果您将数据源返回的ImageUID更改为文件名以外的其他内容(可能是文件名+文件大小),那么它将被视为不同的图像。
发布于 2011-01-30 05:41:07
您应该看看IKImageBrowserItem协议的imageVersion方法。如果您需要让IKImageBrowserView知道某个项目已经更改了其图像,您可以递增imageVersion。这将强制视图更新缓存的图像。
https://stackoverflow.com/questions/3597287
复制相似问题