我正在处理的应用程序在一个点上显示四个随机图像。这四个图像来自一组五十个图像。如果这是一个标准的Flex项目,我只需要设置img.source属性:
this.img1.source ="../assets/img/"+randomname+".png";`
这不起作用,我的图像已经破损了。另一种方法是使用urlLoader加载图像,这也没有加载图像(不出所料,因为它是本地资产)
loader = new Loader();
var urlReq:URLRequest = new URLRequest("../assets/img/"+randomname+".png");
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loaded);
loader.load(urlReq)
所以这也不起作用,我正在考虑将所有图像加载到swc中,然后将swc链接到项目中。这显然不是很好,因为所有资产都在运行时加载到内存中。还有另一种方法吗?
我希望我错过了一些非常简单的东西。
如果.swc解决方案是最好的解决方案,有人可以指出我正确的方向吗?我忘记了整个业务的运作方式,因为我使用Flex / Flash已有几年了。
提前致谢
答案 0 :(得分:1)
您应该将资产目录添加为“源”目录。
然后您应该知道资产目录的内容将被复制到应用程序的根目录。因此,当您拥有图像“assets / interface / bg.png”时,您应该使用新的URLRequest(“interface / bg.png”)加载它。
答案 1 :(得分:0)
您可以尝试:
var urlReq:URLRequest = new URLRequest("assets/img/"+randomname+".png");