annie.MovieClip Class
annie引擎核心类
Methods
- _updateSplitBounds
- addChild
- addChildAt
- addEventListener
- addFrameScript
- addSound
- clearCustomTransform
- destroy
- dispatchEvent
- DisplayObject
- getChildAt
- getChildByName
- getChildIndex
- getCurrentLabel
- getDrawRect
- getSound
- getWH
- globalToLocal
- gotoAndPlay
- gotoAndStop
- hasEventListener
- hitTestPoint
- initButton
- localToGlobal
- MovieClip
- nextFrame
- play
- prevFrame
- removeAllChildren
- removeAllEventListener
- removeChild
- removeChildAt
- removeEventListener
- removeFrameScript
- removeSound
- Sprite
- startDrag
- stop
- stopAllSounds
- stopDrag
- swapChild
- updateCache
Properties
- alpha
- anchorX
- anchorY
- blendMode
- cacheAsBitmap
- children
- clicked
- currentFrame
- filters
- height
- hitArea
- hitTestWithPixel
- instanceId
- instanceType
- isButton
- isCache
- isFront
- isPlaying
- mask
- matrix
- mcSpeed
- mouseChildren
- mouseEnable
- name
- parent
- rotation
- scaleX
- scaleY
- skewX
- skewY
- soundList
- stage
- totalFrames
- visible
- width
- x
- y
Methods
_updateSplitBounds
_updateSplitBounds
()
private
更新boundsList矩阵
addChild
addChild
(
-
child
)
Void
public
添加一个显示对象到Sprite
Parameters:
name | type | flag | description |
---|---|---|---|
child
| annie.DisplayObject |
Returns:
addChildAt
addChildAt
(
-
child
-
index
)
Void
public
添加一个child到Sprite中并指定添加到哪个层级
Parameters:
name | type | flag | description |
---|---|---|---|
child
| annie.DisplayObject | ||
index
| Number | 从0开始 |
Returns:
addEventListener
addEventListener
(
-
type
-
listener
-
useCapture
)
Void
public
给对象添加一个侦听
Parameters:
name | type | flag | description |
---|---|---|---|
type
| String | 侦听类型 | |
listener
| Function | 侦听后的回调方法,如果这个方法是类实例的方法,为了this引用的正确性,请在方法参数后加上.bind(this); | |
useCapture
| Boolean | true 捕获阶段 false 冒泡阶段 默认 true |
Returns:
Example:
this.addEventListener(annie.Event.ADD_TO_STAGE,function(e){console.log(this);}.bind(this));
addFrameScript
addFrameScript
(
-
frameIndex
-
frameScript
)
public
给时间轴添加回调函数,当时间轴播放到当前帧时,此函数将被调用.注意,之前在此帧上添加的所有代码将被覆盖,包括Fla文件中当前帧的代码.
Parameters:
name | type | flag | description |
---|---|---|---|
frameIndex
| Number | {number} 要将代码添加到哪一帧,从0开始.0就是第一帧,1是第二帧... | |
frameScript
| Function | {Function} 时间轴播放到当前帧时要执行回调方法 |
addSound
addSound
(
-
sound
)
Void
public
返回一个id,这个id你要留着作为删除他时使用。 这个声音会根据这个显示对象添加到舞台时播放,移出舞台而关闭
Parameters:
name | type | flag | description |
---|---|---|---|
sound
| annie.Sound |
Returns:
clearCustomTransform
clearCustomTransform
(
-
transId
)
public
如果你在mc更改了对象的x y scale rotation alpha,最后想还原,不再需要自我控制,可以调用这方法
Parameters:
name | type | flag | description |
---|---|---|---|
transId
| Number | //0->x,1->y,2->scaleX,3->scaleY,4->rotation,5->alpha,-1->all |
destroy
destroy
()
Void
public
销毁一个对象 销毁之前一定要做完其他善后工作,否则有可能会出错 特别注意不能在对象自身方法或事件里调用此方法。 比如,不要在显示对象自身的 annie.Event.ON_REMOVE_TO_STAGE 或者其他类似事件调用,一定会报错
Returns:
dispatchEvent
dispatchEvent
(
-
event
-
data
-
useCapture
)
Boolean
public
广播侦听
Parameters:
name | type | flag | description |
---|---|---|---|
event
| annie.Event | String | 广播所带的事件对象,如果传的是字符串则自动生成一个annie.Event对象,事件类型就是传入进来的字符串的值 | |
data
| Object | 广播后跟着事件一起传过去的其他任信息,默认值为null | |
useCapture
| Boolean | true 捕获阶段 false 冒泡阶段 默认 true |
Returns:
如果有收听者则返回true
Example:
var mySprite=new annie.Sprite(),
yourEvent=new annie.Event("yourCustomerEvent");
yourEvent.data={a:1,b:2,c:"hello",d:{aa:1,bb:2}};
mySprite.addEventListener("yourCustomerEvent",function(e){
console.log(e.data);
})
mySprite.dispatchEvent(yourEvent);
DisplayObject
DisplayObject
()
public
getChildAt
getChildAt
(
-
index
)
annie.DisplayObject
public
获取Sprite中指定层级一个child
Parameters:
name | type | flag | description |
---|---|---|---|
index
| Number | 从0开始 |
Returns:
getChildByName
getChildByName
(
-
name
-
isOnlyOne
-
isRecursive
)
String | Array
public
通过给displayObject设置的名字来获取一个child,可以使用正则匹配查找
Parameters:
name | type | flag | description |
---|---|---|---|
name
| String | 对象的具体名字或是一个正则表达式 | |
isOnlyOne
| Boolean | 默认为true,如果为true,只返回最先找到的对象,如果为false则会找到所有匹配的对象数组 | |
isRecursive
| Boolean | false,如果为true,则会递归查找下去,而不只是查找当前对象中的child,child里的child也会找,依此类推 |
Returns:
返回一个对象,或者一个对象数组,没有找到则返回空
getChildIndex
getChildIndex
(
-
child
)
Number
public
获取Sprite中一个child所在的层级索引,找到则返回索引数,未找到则返回-1
Parameters:
name | type | flag | description |
---|---|---|---|
child
| annie.DisplayObject | 子对象 |
Returns:
getCurrentLabel
getCurrentLabel
()
Array
public
movieClip的当前帧的标签数组,没有则为null
Returns:
getDrawRect
getDrawRect
()
annie.Rectangle
public
获取对象形变后外切矩形 可以从这个方法中读取到此显示对象变形后x方向上的宽和y方向上的高
Returns:
getSound
getSound
(
-
id
)
Array
Parameters:
name | type | flag | description |
---|---|---|---|
id
| Number | String |
Returns:
这个对象里所有叫这个名字的声音引用数组
getWH
getWH
()
W: number; h: number
获取宽高
Returns:
}
globalToLocal
globalToLocal
(
-
point
)
annie.Point
public
将全局坐标转换到本地坐标值
Parameters:
name | type | flag | description |
---|---|---|---|
point
| annie.Point |
Returns:
gotoAndPlay
gotoAndPlay
(
-
frameIndex
-
isFront
)
Void
public
将播放头跳转到指定帧并从那一帧开始继续播放
Parameters:
name | type | flag | description |
---|---|---|---|
frameIndex
| Number | String | 批定帧的帧数或指定帧的标签名 | |
isFront
| Boolean | 跳到指定帧后是向前播放, 还是向后播放.不设置些参数将默认向前播放 |
Returns:
gotoAndStop
gotoAndStop
(
-
frameIndex
)
Void
public
将播放头跳转到指定帧并停在那一帧,如果本身在第一帧则不做任何反应
Parameters:
name | type | flag | description |
---|---|---|---|
frameIndex
| Number | String | 批定帧的帧数或指定帧的标签名 |
Returns:
hasEventListener
hasEventListener
(
-
type
-
useCapture
)
Boolean
public
是否有添加过此类型的侦听
Parameters:
name | type | flag | description |
---|---|---|---|
type
| String | 侦听类型 | |
useCapture
| Boolean | true 捕获阶段 false 冒泡阶段 默认 true |
Returns:
如果有则返回true
hitTestPoint
hitTestPoint
(
-
hitPoint
-
isGlobalPoint
)
annie.DisplayObject
public
点击碰撞测试,就是舞台上的一个point是否在显示对象内,在则返回该对象,不在则返回null
Parameters:
name | type | flag | description |
---|---|---|---|
hitPoint
| annie.Point | 要检测碰撞的点 | |
isGlobalPoint
| Boolean | 是不是全局坐标的点,默认false是本地坐标 |
Returns:
initButton
initButton
()
Void
public
将一个mc变成按钮来使用 如果mc在于2帧,那么点击此mc将自动有被按钮的状态,无需用户自己写代码. 此方法不可逆,设置后不再能设置回剪辑,一定要这么做的话,请联系作者,看作者答不答应
Returns:
localToGlobal
localToGlobal
(
-
point
)
annie.Point
public
将本地坐标转换到全局坐标值
Parameters:
name | type | flag | description |
---|---|---|---|
point
| annie.Point |
Returns:
MovieClip
MovieClip
()
public
构造函数
nextFrame
nextFrame
()
Void
public
将播放头向后移一帧并停在下一帧,如果本身在最后一帧则不做任何反应
Returns:
play
play
(
-
isFront
)
Void
public
如果当前时间轴停在某一帧,调用此方法将继续播放.
Parameters:
name | type | flag | description |
---|---|---|---|
isFront
| Boolean | true向前播放,false 向后播放。默认向前 |
Returns:
prevFrame
prevFrame
()
Void
public
将播放头向前移一帧并停在下一帧,如果本身在第一帧则不做任何反应
Returns:
removeAllChildren
removeAllChildren
()
Void
public
移除Sprite上的所有child
Returns:
removeAllEventListener
removeAllEventListener
()
Void
public
移除对象中所有的侦听
Returns:
removeChild
removeChild
(
-
child
)
Void
public
从Sprite中移除一个child
Parameters:
name | type | flag | description |
---|---|---|---|
child
| annie.DisplayObject |
Returns:
removeChildAt
removeChildAt
(
-
index
)
Void
public
移除指定层级上的孩子
Parameters:
name | type | flag | description |
---|---|---|---|
index
| Number | 从0开始 |
Returns:
removeEventListener
removeEventListener
(
-
type
-
listener
-
useCapture
)
Void
public
移除对应类型的侦听
Parameters:
name | type | flag | description |
---|---|---|---|
type
| String | 要移除的侦听类型 | |
listener
| Function | 侦听时绑定的回调方法 | |
useCapture
| Boolean | true 捕获阶段 false 冒泡阶段 默认 true |
Returns:
removeFrameScript
removeFrameScript
(
-
frameIndex
)
public
移除帧上的回调方法
Parameters:
name | type | flag | description |
---|---|---|---|
frameIndex
| Number |
removeSound
removeSound
(
-
id
)
Void
public
删除一个已经添加进来的声音
Parameters:
name | type | flag | description |
---|---|---|---|
id
| Number | String |
Returns:
Sprite
Sprite
()
public
构造函数
startDrag
startDrag
(
-
isCenter
-
bounds
)
Void
public
启动鼠标或者触摸拖动
Parameters:
name | type | flag | description |
---|---|---|---|
isCenter
| Boolean | 指定将可拖动的对象锁定到指针位置中心 (true),还是锁定到用户第一次单击该对象的位置 (false) 默认false | |
bounds
| annie.Rectangle | 相对于显示对象父级的坐标的值,用于指定 Sprite 约束矩形 |
Returns:
stop
stop
()
Void
public
调用止方法将停止当前帧
Returns:
stopAllSounds
stopAllSounds
()
Void
public
停止这个显示对象上的所有声音
Returns:
stopDrag
stopDrag
()
停止鼠标跟随
swapChild
swapChild
(
-
child1
-
child2
)
Boolean
交换两个显示对象的层级
Parameters:
name | type | flag | description |
---|---|---|---|
child1
| Object | 显示对象,或者显示对象的索引 | |
child2
| Object | 显示对象,或者显示对象的索引 |
Returns:
updateCache
updateCache
()
Void
如果对容器缓存为位图过,则会更新缓存,没事别乱调用
Returns:
Properties
alpha
Number
public
显示对象透明度
Default:
1
anchorX
Number
public
显示对象上x方向的缩放或旋转点
Default:
0
anchorY
Number
public
显示对象上y方向的缩放或旋转点
Default:
0
blendMode
Number
public
显示对象的混合模式 支持的混合模式大概有23种,具体查看annie.BlendMode
Default:
0
cacheAsBitmap
Unknown
是否将这个对象缓存为位图了
children
Array
public
显示对象的child列表
Default:
[]
clicked
Unknown
public
如果MovieClip设置成了按钮,则通过此属性可以让它定在按下后的状态上,哪怕再点击它并离开它的时候,他也不会变化状态
currentFrame
Number
public
mc的当前帧
Default:
1
filters
Array
public
小游戏不支持 小程序不支持
显示对象的滤镜数组Default:
null
height
Unknown
public
获取或者设置显示对象在父级里的y方向的高,不到必要不要用此属性获取高 如果你要同时获取宽高,建议使用getWH()方法获取宽和高
hitArea
Unknown
annie.Sprite显示容器的接受鼠标点击的区域。一但设置,容器里所有子级将不会触发任何鼠标相关的事件。 相当于 mouseChildren=false,但在有大量子级显示对象的情况下,此方法的性能搞出mouseChildren几个数量级,建议使用。
Sub-properties:
-
rect
annie.Rectangle
hitTestWithPixel
Boolean
小游戏不支持 小程序不支持
是否对图片对象使用像素碰撞检测透明度,默认关闭Default:
false
instanceId
Number
public
每一个annie引擎对象都会有一个唯一的id码。
Example:
//获取 annie引擎类对象唯一码
console.log(this.instanceId);
instanceType
String
public
每一个annie类都有一个实例类型字符串,通过这个字符串,你能知道这个实例是从哪个类实例而来
isButton
Boolean
public
确认是不是按钮形态
Default:
false
isCache
Boolean
是否被缓存了
isFront
Boolean
public
动画的播放方向,是顺着播还是在倒着播
Default:
true
isPlaying
Boolean
public
当前动画是否处于播放状态
Default:
true
mcSpeed
Number
public
容器类所有动画的播放速度,默认是1.如果有嵌套的话,速度相乘;
Default:
1
mouseChildren
Boolean
public
是否可以让children接收鼠标事件 鼠标事件将不会往下冒泡
Default:
true
mouseEnable
Boolean
public
是否可以接受点击事件,如果设置为false,此显示对象将无法接收到点击事件
Default:
false
name
String
public
每一个显示对象都可以给他命一个名字,这样我们在查找子级的时候就可以直接用this.getChildrndByName("name")获取到这个对象的引用
Default:
""
rotation
Number
public
显示对象旋转角度
Default:
0
scaleX
Number
public
显示对象x方向的缩放值
Default:
1
scaleY
Number
public
显示对象y方向的缩放值
Default:
1
skewX
Number
public
显示对象x方向的斜切值
Default:
0
skewY
Number
public
显示对象y方向的斜切值
Default:
0
soundList
Array
public
当前对象包含的声音列表
Default:
[]
stage
Stage
public
此显示对象所在的舞台对象,如果此对象没有被添加到显示对象列表中,此对象为空。
Default:
null;
totalFrames
Number
public
当前动画的总帧数
Default:
1
visible
Boolean
public
显未对象是否可见
Default:
0
width
Unknown
public
获取或者设置显示对象在父级里的x方向的宽,不到必要不要用此属性获取高 如果你要同时获取宽高,建议使用 getWH()方法获取宽和高
x
Number
public
显示对象位置x
Default:
0
y
Number
public
显示对象位置y
Default:
0
Events
ADD_TO_STAGE
annie.DisplayObject显示对象加入到舞台事件
annie.Event.CALL_FRAME
String
public
static
annie.MovieClip 帧标签事件
annie.Event.END_FRAME
String
public
static
annie.MovieClip 播放完成事件
CLICK
String
annie.DisplayObject鼠标或者手指单击
ENTER_FRAME
annie.DisplayObject显示对象 循环帧事件
MOUSE_DOWN
annie.DisplayObject鼠标或者手指按下事件
MOUSE_MOVE
annie.DisplayObject鼠标或者手指移动事件
MOUSE_OUT
annie.DisplayObject鼠标或者手指移出显示对象边界触发的事件
MOUSE_OVER
annie.DisplayObject鼠标或者手指移入到显示对象上里触发的事件
MOUSE_UP
annie.DisplayObject鼠标或者手指抬起事件
REMOVE_TO_STAGE
annie.DisplayObject显示对象从舞台移出事件