flash中AS的使用技巧汇总

核心提示:flash中AS使用经验总结。

都是在项目中总结的,经过实践的,在flex2 as3下使用的。

as调js

ExternalInterface.call("js函数名",参数:数组);(可以接收返回值)

js调as

as:ExternalInterface.addCallback("js中使用的函数名(字符串)", as中的函数(函数类型));

js:SWF名.js中使用的函数名(参数);

对象清理:

as中如果某个对象不被使用,且没有任何对象引用它,则此对象会被回收器回收(不一定什么时候),所以用完的对象一定要处理(比如加的监听要删除等等),否则会长占内存。

重绘:

flash中被挡住的对象也会被重绘,比如在一个位置不停的画圆,画到几百或几千层,当鼠标经过这块的时候会感觉到速度变慢,查看cpu状态会看到cpu被占满,但不会占内存。

判断对象类型:

if(a is 类型){}

获得对象类型:

trace(typeof 对象)输出对象类型

类型转化:

var a:类型 = b as 类型;

强转:

var a:类型 = 类型(b);

判断数字:

isNaN(表达式),注意是数字时返回false

Timer

不要认为Timer可以极其准确;使用Timer时间间隔不要低于10毫秒.

private,protected,internal,public访问权限

private:只能在类本身内部访问

protected:可以由类本身或任何子类访问.

internal:可以由类本身或者相同包内的任何类访问;

public:可以在类内部访问,也可以由类实例访问

for...in与for each...in的区别

与for...in循环不同的是,for each...in循环中的迭代变量包含属性所保存的值,而不包含属性的名称(或主键,索引).

例如:var obj:Object={name1:value1,name2:value2};

for...in取出的是name,for each...in取出的是value

对象:

AS中所有对象可默认互相转换,如数组可以当作Map来用。

但是作为数组来用时,就不能保证顺序了。

比如:

var array:Array = new Array();

array["a"] = new Object();

ToolTip

如果禁止ToolTip显示,

1.this.truncateToFit = false;(不会出现...)

2.重写updateDisplayList,并最后super.toolTip = null;(会出现...)

反射:

classType = flash.utils.getDefinitionByName(className) as Class;

new classType();

格林尼治时间 格式化时出错。(如中国 时区,1970/01/01 08:00时出错,已经确认是flex的bug)

replace所有

AS中没有replaceAll 函数,要实现这个函数可以用正则表达式

如: 将 00:00:00 中的 ’:‘替换成  ‘ ‘ 可如下实现

var testStr : String = "00:00:00";

var repedStr : String = testStr.replace(/:/g, " ");

/:/g 后面的g不能少, g 表示全局

AS对象深Clone方法:

        private function clone(_source:Object):* {

            var copier:ByteArray = new ByteArray();

            copier.writeObject(_source);

            copier.position = 0;

            return(copier.readObject());

        }

mx_internal类型的方法也可以重载:(不推荐)

需要在import的最下面进行如下声明-

use namespace mx_internal

时间: 2024-09-06 23:48:20

flash中AS的使用技巧汇总的相关文章

Flash中像素字体使用技巧

技巧 制作商业Flash动画的朋友相信对于象素字体一定不陌生.它又小又酷,非常漂亮,受大多数设计师的欢迎.目前像在全国非常有名的04系列字体(图-1) (图-1) 04系列字体的官方网站:http://www.04.jp.org/ 大家可以到这里面去下载所有的04系列字体. 对于04系列字体,Flash的支持并不完善.不仅对于04系列,对于其他各种类型的字体支持都不是那么完善,因为Flash是一个矢量动画软件.他可以很好的解决图像因为放大或缩小所造成的失真问题,但对于由单个象素构成的图形支持不好

Flash中的鼠标绘画技巧

技巧|鼠标 开场白:看着网上那么多缤纷多彩的Flash,相信很多朋友都有想自己亲手制作动画片的愿望.但我们中的大多数人并没有学过绘画,总是有很多的想法却无法用自己的画笔表达出来.还有一些朋友虽然有点绘画功底,但苦于没有扫描仪.手绘板等等专业工具,总不能得心应手.其实只要您有一只不错的鼠标,利用好Flash中自带的绘画工具,还有仔细阅读完本文,再加上细心与耐心,即使没有受过专业绘画训练,您也一样可以制作出很漂亮的动漫画效果. 本文主要讲述了如何使用鼠标绘制人的面部,包括脸形塑造.眼睛的绘制.嘴的塑

在Flash中使用位图的技巧

技巧 现在很多教师喜欢用Flash制作课件,而图形是制作过程中必不可少的元素.我们一般直接使用导入的位图,但在使用过程中却忽视了许多问题.因为毕竟Flash是一种基于矢量的图形软件,处理位图并不是它的强项,滥用位图很有可能给你的文件带来隐患.如文件的增大.运行时位图出现错位.抖动等情况.所以在使用位图时有必要掌握一些使用位图的方法和技巧,以消除隐患. 1.在导入之前应该先用其他的图形编辑软件对准备导入到Flash中的位图进行编辑(也可以用Flash对其进行编辑,编辑好后导出为图像,再重新导入到项

jQuery中的100个技巧汇总_jquery

1.当document文档就绪时执行JavaScript代码. 我们为什么使用jQuery库呢?原因之一就在于我们可以使jQuery代码在各种不同的浏览器和存在bug的浏览器上完美运行. <script src="http://code.jquery.com/jquery-1.10.2.min.js"></script> <script> // Different ways to achieve the Document Ready event //

Flash中FLV流媒体使用技巧

技巧|媒体 FLV流媒体格式是一种新的视频格式,全称为Flash Video.Flash MX 2004对其提供了完美的支持,它的出现有效地解决了视频文件导入Flash后,使导出的SWF文件体积庞大,不能在网络上很好的使用等缺点.下面我们就来介绍一下如何使用小巧的FLV流媒体文件. 一.建立FLV流媒体格式文件 首先,打开Flash MX 2004,新建一个Flash文档.将准备好的AVI格式的视频文件导入到库中.导入过程会出现向导提示,总共分2步,分别是"编辑"和"编码&q

C# 中DateTime 的使用技巧汇总_C#教程

//C# 根据当前时间获取本周.下周.本月.下月.本季度等时间段 DateTime dt = DateTime.Now;  //当前时间 DateTime startWeek = dt.AddDays(1 - Convert.ToInt32(dt.DayOfWeek.ToString("d")));  //本周周一 DateTime endWeek = startWeek.AddDays(6);  //本周周日 DateTime startMonth = dt.AddDays(1 -

Flash中的电影艺术之镜头技巧教程

技巧|教程 文章内容摘自<Flash动画与卡通制作创意导航>([美]Ibis Fernanadez著 罗小燕译 清华大学出版社) ,有改动,实例作品为若无说明为qhwa原创. 对于许多动画制作者来说,通过Flash获得电影般的效果十分困难,这样他们就不得不满足于非常规的处理方法或者静态画面,而这样又影响了他们的制作.只会说话的头十分枯燥,而且有时仅仅画出角色正确的动作和姿态是远远不够的. 电影艺术融化了摄影,舞蹈动作设计和影视编辑技术,其中影视编辑技术对于成功制作卡通动画来说起主导作用.通常,

技巧总结:Flash中一些常用的代码

技巧 昨天有朋友在MSN上问我如何实现一打开网页,就让SWF文件全屏的效果,我记得以前好像曾经在坛子里发过这样的贴子,没去找,呵呵,没时间啊~~现在整理了一下关于这方面的资料,以供各位各取所需 第一种方法:不显示浏览器菜单栏.工具栏的全屏.这种全屏稍稍复杂,也与FLASH的设置无关,但要借 助JavaScript来完成.方法是:在HTML文件中<head></head>间加入以下代码: <script language="JavaScript"> 

技巧:Flash中的打印控制

打印|技巧|控制 这个估计很多人没有关心过.但是很有用.我贴上来吧. Flash中负责打印的类是 PrintJob 首先了解它一下 属性: orientation:String [只读] 图像的打印方向.图像的打印方向.此属性可以为 "landscape" 或 "portrait".请注意,只有在调用 PrintJob.start() 方法后,此属性才可用. pageHeight:Number [只读] 页面上实际可打印区域的高度(以磅为单位). pageWidth