ActionScript 3 Tip of the Day
从上面的连接进去,那里的小技巧用处大的很.收藏了先。
想想还是把它翻译过来吧
- 改变帧的播放速度
在AS3里的flash.display.Stage类可以改变播放速度。
stage.frameRate = 12;
速度的值在范围0.01~1000之间。 - 类的作用域绑定到类的方法上
以下几种方式,this都指向类。
- 类直接调用方法
- 方法重新引用
- 用call或apply调用
package {
import flash.display.Sprite;
public class ClassScope extends Sprite {
public function ClassScope() {
traceThis(); // "Class Instance"
var obj:Object = new Object();
obj.traceThis = traceThis;
obj.traceThis(); // "Class Instance"
traceThis.call( new Sprite()); // "Class Instance"
}
public override function toString():String {
return " Class Instance " ;
}
public function traceThis(): void {
trace( this );
}
}
}
包括以下几种
- drawCircle(x:Number, y:Number, radius:Number):void
- drawEllipse(x:Number, y:Number, width:Number, height:Number):void
- drawRect(x:Number, y:Number, width:Number, height:Number):void
- drawRoundRect(x:Number, y:Number, width:Number, height:Number, ellipseWidth:Number, ellipseHeight:Number):void
如下使用:
// 画一个蓝色的圆角矩形
var square:Sprite = new Sprite();
square.graphics.beginFill( 0xFF );
square.graphics.drawRoundRect( 0 , 0 , 100 , 50 , 10 , 10 );
square.graphics.endFill();
addChild(square);
简单:
| 复杂:
|
- Void不再是大写,而是小写的void;
- 多了一个新的类型*,表示任意类型,在as3里一定要指定变量类型,如果不确定可以用*代替;
- XML 对象也不同于以前as1和as2中的XML 对象,原来的XML 对象在as3里用XMLObject代替;新的XML是基于E4X标准的xml;
- integer 类型在as3里不再存在,只有int和uint类型,他们是不能表示小数的,只能用来表示整数,这样在类似for这样的循环运算中比较方便,而且int可以和较小的Number类型数值进行转换(Number过大容易发生溢出),而像uint一般用在特殊的地方,比如color;