1.单例模式语法
private static var _instance:Xxx;
//单例模式 单例模式,属于创建类型的一种常用的软件设计模式。通过单例模式的方法创建的类在当前进程中只有一个实例(根据需要,也有可能一个线程中属于单例,如:仅线程上下文内使用同一个实例)
public static function getInstance():TestHandler
{
if(TestHandler._instance == null) {
TestHandler._instance = new TestHandler();
}
return TestHandler._instance;
}
Xxx.getInstance() 在各处调用
2. TCP/UDP socket 发送/接收16进制:
(1)发:
把十六进制写入 ByteArray 后发送,
十六进制 数字 可以 uint("0x11") 也可以 0x11
(2)收:
①TCP :要用socket类的方法readBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void
参数一传new一个bytes,参数二偏移0,参数三为收取时的长度;随后数据会复制到bytes.
②UDP: 收取直接就在datagramSocket类侦听
datagramSocket.addEventListener( DatagramSocketDataEvent.DATA, dataHandler );
e.data 即ByteArray,读取byte[index]即可读取相关数据
3.tweenmax.as 缓动类
比TweenLite更全,包含贝塞尔曲线运动,有2种方式控制,一个是填控制点,一个是经过点,只能写其一。
bezier : Array:贝塞尔曲线。这个有点不清楚,好像数组里的奇数个点(Object{x:xxx,y:xxx})为贝塞尔曲线的控制点,偶数个点为运动的终点。
bezierThrough : Array:比贝塞尔曲线更直观,数组里奇数的点为曲线中要穿过的点。
AS3常用三方类库:TweenMax - Zimin - 博客园
4. 元件下的几个子元件可以调整前后层级,但是不能往前跳帧,
不然调整了层级的元件又多出一个同名的,只能不跳帧处理(只有一帧),比如元件的这个几个子元件再转成一个整体元件,只有一帧。
5. 路径
普通swf是可以使用 "当前文件夹下文件夹名称/文件名称"读取视频等资源,或绝对路径,
带AIR的 必须绝对路径, 不然被引用后报安全沙箱问题错误。
6. 有点像C#的out 修饰符, fileStream.readBytes(fileData)
第一次看到fileStream.readBytes(fileData);
API:
readBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void
从文件流、字节流或字节数组中读取 length 参数指定的数据字节数。
GitHub找不到源码
现象:
外部的实例化的无数据的fileData 被写入了数据
//C#
int initializeInMethod;
OutArgExample(out initializeInMethod);
Console.WriteLine(initializeInMethod); // value is now 44
void OutArgExample(out int number)
{
number = 44;
}
都是传参进去一个 返回类型为void 的函数,
现象:函数内部的形参变了,外部的变量也变了
实则 它让形参成为 实参的别名, 在函数内部操作时即操作实参