一个SWF加载另一个SWF时,常会报错,最近研究了主要的报错情况.
在剖析报错情况前,先看下我们用的加载代码:
AS3代码
- var loadSwf:Loader = new Loader;
-
loadSwf.contentLoaderInfo.addEventListener(Event.COMPLETE, loadCom)
-
loadSwf.load(new URLRequest("demo.swf"))
-
private function loadCom(event:Event):void {
-
var loadInfo:LoaderInfo = event.target as LoaderInfo;
-
var getSwf:DisplayObject = loadInfo.content as DisplayObject;
-
stage.addChild(getSwf);
- }
报错情况有以下几处:
1.显示对象根目录错误
有些人为图方便,直接在把Loader对象用addChild()添加到舞台上,这是错误的,因为有些子SWF的程序在文档类中,把parent看成是stage,而直接添加Loader对象,子SWF中的parent就是Loader了,Loader相当于另一个容器,而导致子SWF执行不正常.
解决方法:看看上面的加载代码,已经是解决方法了,第六行,我们获得的getSwf其实是一个文档类的实例化,因为文档类必须继承DisplayObject的,所以获取的类型为DisplayObject是肯定正确的.我们把文档类直接添加到stage中,这样就保证了与原SWF的结构一致.
2.加载进来提示无法访问空对象引用的属性或方法.
这是因为子SWF还没有添加到舞台上就调用stage了,这时stage是null值,所以提示这个错误.
解决方法:在子SWF的构造函数中,添加到舞台上再执行代码.
AS3代码
- public function Main(){//构造函数
-
if (stage){
- init();
-
}else{
-
addEventListener(Event.ADDED_TO_STAGE, init);
-
}}
-
private function init(e:Event = null):void {
-
- }
分享到:
相关推荐
Flex中加载SWF方法,介绍了flex 对 swf 加载和处理
swf预加载 swf预加载 swf预加载
用AS3编写,点击不同的按钮加载不同的外部SWF文件,显示在固定尺寸的舞台上,同一时该只能加载一个外部文件,自动调整被加载文件的尺寸以适应容器大小。昨天上传那个不知道为什么见不到,再次上传并添加了部分容错...
单个SWF文件loading加载详解
FlashAS教程:AS2.0制作加载外部.swf影片的视频播放器.pdf
解决pdf2swf中文乱码问题文件全套
用ActionScript 3.0加载外部SWF文件,每个按钮对应一个文件,在同一时刻只能加载一个文件,令被加载的文件显示在固定大小的容器内。Adobe Flash CS4格式
一旦目标SWF加载到应用程序中,AS3 Sorcerer将以树视图模式显示它的内容,允许您单击各个节点来显示下级元素。 代码大小部分允许您获得每段代码的尺寸的百分比估计。 工作窗口将显示完整的Action Script 3代码,但...
加载swf的html文件写法 加载swf的html文件写法
在android程序中加载flash动画
flex加载swf的N种方法.zip
flash actionscript3游戏开发之 1个swf加载另1个swf并调用其中的元件类.rar
本软件可以还原swf为fla文件,可以帮助很多不怎么会flash的人带来便捷。
演试如何实现SWF加载多个SWF,方法不难,主要在思路
flash新手: 加载完外部swf文件后,想实现点击flash的同时,后台能捕捉到flash的播放情况,请各位给予指教
AS加载一外部SWF调用该swf内部方法,一个Flash中通过AS3代码的Loader对象加载另一个SWF文件,并访问其中的文档类中的方法。 简单示例: 主文件:Main.fla, Main.as 被调用的文件:called.swf, Called.as
解决swf文件复制到另外的电脑上打不开的问题。
as3加载swf源代码,as3 +swf +xml
NULL 博文链接:https://412599526-qq-com.iteye.com/blog/1267664
SWFPlayer带拖动条的SWF播放器SWFPlayer带拖动条的SWF播放器SWFPlayer带拖动条的SWF播放器SWFPlayer带拖动条的SWF播放器SWFPlayer带拖动条的SWF播放器SWFPlayer带拖动条的SWF播放器SWFPlayer带拖动条的SWF播放器SWF...