位图资源,它通常使位图生成SWF文件,并使用Loader类加载到应用程序中。 我从谷歌搜索一些答案,找到两种生成SWF文件的方法,一种。使用mxmlc工具。另外,使用jsfl。 我知道我们可以将位图或swf文件嵌入到As代码中。并使用像这样的mxmlc命令: as文件是Vip.as,代码:
package
{
public class Vip
{
[Embed(source="vip.gif"]
public static var vip:Class;
}
}
现在,我使用mxmlc Vip.as ... 它有Vip.swf文件,将Vip.swf文件上传到Server。 然后,在flashBuilder中,创建一个新的ActionScript项目,应用程序代码为:
public class LoadUI extends Sprite
{
public function LoadUI()
{
init();
}
private function init():void {
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler);
var context:LoaderContext = new LoaderContext();
context.applicationDomain = new ApplicationDomain(ApplicationDomain.currentDomain);
loader.load( new URLRequest('http://localhost/swfResouce/Vip.swf'));
}
private function completeHandler(e:Event):void {
var loaderInfo:LoaderInfo = e.currentTarget as LoaderInfo;
}
并调试应用程序,错误是:
VerifyError: Error #1014: Class Not Found mx.core::BitmapAsset.
我不知道如何使用mxmlc生成swf文件。调试代码时没有错误。
另一种方法是使用JSFL在flash cs5中生成SWF,但我不知道如何使用它。啊,非常痛苦。
答案 0 :(得分:0)
我猜您要显示嵌入的图像(gif)。
以下是它的完成方式:
package
{
import flash.display.Bitmap;
import flash.display.Sprite;
public class Main extends Sprite
{
[Embed(source="vip.gif")]
private var embeddedVip : Class;
public function Main()
{
var vip : Bitmap = new embeddedVip();
addChild(vip);
}
}
}
答案 1 :(得分:0)
避免
VerifyError:错误#1014
尝试使用静态链接进行编译:
mxmlc -static-link-runtime-shared-libraries=true -debug=true Main.swf --Main.as
[编辑]
mxmlc -static-link-runtime-shared-libraries=true -debug=true Main.as
答案 2 :(得分:0)
为什么不直接加载图像(来自Loader)并将它们包装在Sprite中? GIF并不完全需要时间表。 :)