Performance Flash中的大图像性能问题(AIR应用程序)
我想我的问题可能是使用大图像。让我描述一下发生了什么 我加载这些图像的方式是将我的类DynamicImage的所有实例都放在时间轴的第2帧上。它基于以前读入的XML加载图像Performance Flash中的大图像性能问题(AIR应用程序),performance,image,air,Performance,Image,Air,我想我的问题可能是使用大图像。让我描述一下发生了什么 我加载这些图像的方式是将我的类DynamicImage的所有实例都放在时间轴的第2帧上。它基于以前读入的XML加载图像 public class DynamicImage extends DynamicSingleImage { //var eLoader:Loader; //for english image var aLoader:Loader; //for alternate language image pu
public class DynamicImage extends DynamicSingleImage
{
//var eLoader:Loader; //for english image
var aLoader:Loader; //for alternate language image
public function DynamicImage()
{
//loadMyImage(); //don't need to do this...super does this
...
}
override public function loadMyImage () :void
{
...
}
当我们进入第2帧时,应用程序只是加载资产,这对我来说并不重要
所以,让这个问题简短一点……我有两个加载的DynamicImage(它们是3840x2400)。我有一个切换按钮,可以在两个图像之间切换。我们叫他们A和B吧
行为如下。
A默认为启用。
当我第一次切换到B…在B显示之前有一个瞬间的延迟。现在,当我在A和B之间来回切换时(更改它们的“可见”属性)…这是非常直接的。然后我继续使用我的应用程序的其他部分…其中也有一些大图像,我正在打开/关闭(也使用visible=false/true)。当我回到A&B,当我第一次切换时,我又看到了瞬间的延迟
是因为flash正在从内存中加载/卸载这些图像吗?我是否应该尝试让此AIR应用程序使用更多内存?这里还会发生什么?这与在显示器中绘制图像有关,您正在处理的图像确实很大!你不能减少吗?你想干什么?我编写了一个小类,将基本图像转换偏移到SIPS(仅限mac),以便加载较小的代理图像。由于SIPS与GPU配合使用,因此速度超快!!我当时正在处理300mb以上的图像,它几乎可以立即加载 也许这对任何人都有帮助: