如何使用as3缓存图像?

这是我在StackOverFlow中的第一篇文章,我给你带来了一个困扰我的开发团队的问题。 我们正在一个项目中,使用独立的FlashPlayer作为新闻显示器。 新闻源是从ASP.Net请求返回的动态XML,并在Windows XP上运行。 问题是: - 显示器在总线屏幕上运行,有时互联网连接失败,但我们仍需要继续显示已下载新闻的图像。当我们手动将字符串放在URLRequest上时,它可以工作。图像从服务器下载,由IE8缓存,如果互联网消失,则从缓存重新加载。但是,当我们从de XML动态检索图像url并将URLRequest方法放入其中时,从缓存重新加载不起作用。 例如。 1 - 静态字符串工作
var pictureUrl:String = "http://www.server-domain/image.jpg"
public var loader:Loader;
loader.load(pictureUrl);
结果:加载图像,显示,保存在缓存中,如果互联网连接失败,则从缓存重新加载。 例如。 2 - 动态字符串不工作
var pictureXmlList:XMLList = xml.item.image as XMLList;
var pictureUrl:String = pictureXmlList[0] as String;
public var loader:Loader;
loader.load(pictureUrl);
结果:加载图像,显示,保存在缓存中,如果互联网连接失败,请勿从缓存重新加载。
IOError: [IOErrorEventType="ioError" bubbles=false cancelable=false eventPhase=2 text="Error #2036"]
    
已邀请:
您可以尝试的一件事是使用Flash的缓存(称为“本地共享对象”)而不是依赖于浏览器的缓存 - http://www.bestflashanimationsite.com/tutorials/4/ 你可以在那里找到一些建议。这样它就不必拉入XML文件来获取URL - 你将把它放在内存中。 我不确定这对你有没有帮助,但它至少应该扩大你的选择范围! :)     

要回复问题请先登录注册