摘要: 当程序越来越大,我们需要把它拆分成多个swf,在需要的时候动态加载。拆分时应该尽量把不同的类编译进唯一的swf,避免因swf文件增多而使整个程序的文件尺寸增大。按此原则可以拆分出以下两种swf,借助 ApplicationDomain 共享其代码和资源。模块(Module)按照程序逻辑,可以拆分出多个“功能模块”,如“注册”、“管理”等等;按照游戏或社区类程序的关卡或场景,可以拆分出不同的“场景模块”。这些模块不是主程序运行必须的,只在需要的时候加载。 运行时共享库(RSL)主场景或者多个模块通用的资源,比如位图、声音、设计好的页面元素等,可作为“库”在主程序运行前加载。可以整套更换的皮肤(. 阅读全文
posted @ 2011-06-20 10:09 子福当自强 阅读(326) 评论(0) 推荐(1) 编辑
摘要: 删除对对象的所有引用以确保触发垃圾回收。 在 Flash Player 的发行版中无法直接启动垃圾回收器。要确保将一个对象作为垃圾回收,请删除对该对象的所有引用。请记住,在 ActionScript 1.0 和 2.0 中使用的旧 delete 运算符在 ActionScript 3.0 中有不同的行为。它只能用于删除动态对象的动态属性。注: 在 Adobe® AIR® 和 Flash Player 的调试版中可以直接调用垃圾回收器。例如,以下代码将 Sprite 引用设置为 null:var mySprite:Sprite = new Sprite(); // Set t 阅读全文
posted @ 2011-06-20 02:35 子福当自强 阅读(296) 评论(0) 推荐(0) 编辑
摘要: 问题我想把自定义类实例存储到LSO解决办法使用flash.net.registerClassAlias( )方法保留类型信息并把类实例添加到共享对象的data属性上。讨论LSOs 使用特殊的二进制格式,Action Message Format (AMF),当要在LSO中存储类实例时,实例会被编码为包含属性的普通的object。这样当重新从共享对象中读取实例时,已经不是原来的类实例了,因为已不能根据类型信息解码回来。flash.net包中的registerClassAlias( )方法就是为解决这个问题的,这个方法的使用是很简单的,在AS1.0和AS2.0中写法是Object.register 阅读全文
posted @ 2011-06-20 02:33 子福当自强 阅读(587) 评论(0) 推荐(0) 编辑
摘要: 简介电影剪辑在运行时,大多数数据都存储在内容中,一旦电影剪辑关闭,那么这些数据也同时从内存中清除掉,如果想存储数据或者让客户端的 两个电影剪辑共享数据该怎么办呢,要想办法把数据存储在Flash播放器外面。ActionScript中,SharedObject类 实现了客户端机器数据的持久性存储。有两种类型的共享对象:本地和远程,这章集中讨论local shared objects (LSOs).Local shared objects 很类似于浏览器中cookies,LSOs 的功能也和cookies 很类似,如存储用户登陆网站的用户名, 这样不必每次登陆都要输入用户名了,不过LSOs 的功能不 阅读全文
posted @ 2011-06-20 02:33 子福当自强 阅读(786) 评论(0) 推荐(0) 编辑
悟道