易截截图软件、单文件、免安装、纯绿色、仅160KB

flex swfloader unload

 
这样的一种情况:
使用Loader去load一个swf:
var fileURL:String = “assets/test.swf”
var swfLoader:Loader = new Loader();
swfLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, swfLoaded);
swfLoader.load(new URLRequest(fileURL));
function swfLoaded(evt:Event):void{
    addChild(swfLoader);
}
这些是加载外部swf在AS3.0中最基本的代码,如果你在舞台上有一个按钮,点击时去调用 swfLoader.unload(),按道理的话应该会把加载到swfLoader里面的test.swf给清除。
问题产生: 如果test.swf中包含声音,则会出现调用unload方法后声音还是存在。
通常情况下会怀疑自己的代码是不是有问题,或者还是别的什么。。。但是即使在最简情况下也出现这样的问题,那就要追寻缘由了。在网上找了很多相关的文章,大部分都给了这个链接: http://www.gskinner.com/blog/archives/2008/04/failure_to_unlo.html  gskinner,很强的团队,以后再介绍了。里面体介绍了问题出现的情况。
unload是flash player9的一个bug,出现的情况就是flash player无法回收loader中load的元件,unload做的工作只是将load的元件移除Loader的display list(显示列表)。而只要load的swf中包含复杂的代码,或者说有任何事件侦听代码就无法使将其回收,当然也就无法回收他占用的内存。如果有大量的加载的话很有可能让程序崩溃。然而如果swf中有声音更是直接影响。总不能停止所有声音吧。
解决方法:
读gskinner的那篇文章,你会发现他并没有直接给出解决方法,只有一些建议。读了评论你会发现更是有意思,开始大部分是夸奖,到了后来却很多是抱怨,说什么只是谈,没有解决方法阿什么的,而且会发现没人说自己顺利解决了问题。看样子真是一个很大的bug。从我个人来说我试了其中的一些方法,也没有成功。但是其中有一种方法值得我们研究,叫“GC“,垃圾回收机制强行执行,有两篇文章可以参考:http://bbs.actionscript3.cn/thread-234-1-1.html  还有就是:http://www.ultrashock.com/forums/random-chat/failure-to-unload-flash-player-9s-dirty-secret-99237.html
主要代码:
package ...
{   
    import flash.display.Loader;   
    import flash.net.LocalConnection;    
  &


相关文档:

flex RESULT_FORMAT_E4X对象转化为ArrayCollection

刚接触flex. 在用HTTPService获取XML格式数据再绑定给DataGrid时.遇到一个很"奇怪"的问题 就是当xml的条目小于等于1时,就会出错. 很是郁闷了一段时间 后来才发现. 问题即不是出在HTTPService上,也不是出在DataGrid上. 而是出在 RESULT_FORMAT_E4X 型数据类型转化为ArrayCollection上 原来 event.result  返回的是ob ......

使用Flex重构公司项目

1. 整体的结构分布:
各模块使用Module来划分,每个模块的页面及其相关的组件元素都是使用Component来划分;
模块的切换使用加载的方式,模块内部的切换使用页面跳转的方式;
技术问题:模块的切换与页面的切换的过程!
ModuleLoader与ModuleManager之间的取舍,选择了后者,可控的更多,但是目前的影响并不大!
关于M ......

Flex+LCDS+Java 实践(一) 游戏大地图背景制作

前言:
本项目主要是通过把地图切片嵌入swf,把切片坐标用Java数据打包,然后 在Flex项目内通过Java读取打包数据,通讯给Flex,最后把swf内的图片安放在对应位置来实大地图 拆分->打包->再现的过程。
1.  swf图片打包代码 BitMapClass.as
package
{
import flash.display.Sprite;

public class BitM ......

flex画图形示例

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute"
creationComplete="doDraw()"
backgroundColor="#d6d4d4" backgroundGradientColors="[#FFFFFF, #FFFFFF]">
<mx:Canvas id="paper"
x="30"
y="24"
......

Flex RPG游戏DEMO (2):夭折篇

  由于本人最近忙于找工作和毕业设计,没有时间来继续这个系列, 只写了第一篇,自己也深感惭愧,这一篇介绍一下这个demo的整体架构吧,先贴下下载地址。http://download.csdn.net/source/2118707
 目前服务端已完成登陆注册模块,使用Socket编程,TCP协议。等服务端完成将完整的编写一个系列的教程。~~
  ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号