【发布时间】:2009-03-13 19:06:31
【问题描述】:
使用 Loader 加载图像时,将图像添加到显示列表的首选方式是什么?在像 new Bitmap( Bitmap(LoaderInfo(e.target).content).bitmapData ) 这样的 Event.COMPLETE 处理程序中抓取数据,还是添加 Loader 实例本身?
【问题讨论】:
标签: apache-flex flash actionscript-3
使用 Loader 加载图像时,将图像添加到显示列表的首选方式是什么?在像 new Bitmap( Bitmap(LoaderInfo(e.target).content).bitmapData ) 这样的 Event.COMPLETE 处理程序中抓取数据,还是添加 Loader 实例本身?
【问题讨论】:
标签: apache-flex flash actionscript-3
如果您只想显示 Loader 的内容,请随意将 Loader 添加到显示列表中,而不是提取其内容。当您需要重新设置 Loader 的内容时,这种情况并不常见。
此外,值得注意的是,加载程序的内容并不总是可访问的。例如,Flash Player 对从其他域加载的内容设置了安全限制。强制执行这些更强大的安全规则后,如果您尝试访问加载程序的内容,Flash Player 会在运行时引发安全错误。
【讨论】:
最好等待Loader 完成并在结果处理程序中设置Image 数据。
【讨论】:
您不能将子级添加到 Loader 类,因为.....引用 livedocs“Loader 类重写了它继承的以下方法,因为 Loader 对象只能有一个子显示对象”
【讨论】:
位图在调整大小时支持图像平滑,有时这很方便。 另一方面,Loader 是 DisplayObjectContainer 并允许在其中添加其他子项。
【讨论】:
Loader 很方便,因为它使数据处理非常整洁(加载/卸载)。就我个人而言,我需要有充分的理由从加载器对象中提取数据。
对于图像,一个很好的理由是无论您对数据做什么都需要 BitmapData 类。
如果您只是显示图像,那么您不一定需要 BitmapData 类。在这种情况下,使用 BitmapData 是不需要的代码!
【讨论】: