显示对象的属性
alpha:透明度
width:宽度
height:高度
rotation:旋转角度
scaleX:横向缩放
scaleY:纵向缩放
skewX:横向斜切
skewY:纵向斜切
visible:是否可见
x:X轴坐标值
y:Y轴坐标值
anchorOffsetX:对象绝对锚点X
anchorOffsetY:对象绝对锚点Y
name:类似标识
核心显示类
类 | 描述 |
DisplayObject | 显示对象基类,所有显示对象均继承自此类 |
Bitmap | 位图,用来显示图片 |
Shape | 用来显示矢量图,可以使用其中的方法绘制矢量图形 |
TextField | 文本类 |
BitmapText | 位图文本类 |
DisplayObjectContainer | 显示对象容器接口,所有显示对象容器均实现此接口 |
Sprite | 带有矢量绘制功能的显示容器 |
Stage | 舞台类 |
自定义显示对象类
自定义显示对象类需要继承自 DisplayObject的具体子类,例如Shape或者TextField。
class MyGrid extends egret.Shape{
public constructor(){
super();
this.drawGrid();
}
private drawGrid(){
this.graphics.beginFill( 0x0000ff );
this.graphics.drawRect( 0, 0, 50,50 );
this.graphics.endFill();
this.graphics.beginFill( 0x0000ff );
this.graphics.drawRect( 50, 50, 50, 50);
this.graphics.endFill();
this.graphics.beginFill( 0xff0000 );
this.graphics.drawRect( 50, 0, 50,50 );
this.graphics.endFill();
this.graphics.beginFill( 0xff0000 );
this.graphics.drawRect( 0, 50, 50,50 );
this.graphics.endFill();
}
显示容器
所有的显示容器全部继承自 DisplayObjectContainer 类,该类继承自 DisplayObject 。也就是说,在Egret中,所有的容器都继承自 DisplayObject。
在Egret中,DisplayObjectContainer 封装了一些显示列表中常用的功能,将在后面文档中详细介绍。这些常用操作主要分为四类:
添加、删除子对象
访问子对象
检测子对象
设置叠放次序
在Egret中,显示对象被分为两大类:一种是可以包括其他显示对象的显示对象容器,简称为“容器”。另外一种是单纯的显示对象,除自身以外不能包括其他显示对象,简称“非容器对象”。
Sprite容器
Sprite继承自 DisplayObjectContainer,同时添加了Graphics功能(绘图功能);
自定义容器
自定义容器,可编写一个类,继承 DisplayObjectContainer 。如果要同时实现Graphics绘图功能,可继承 Sprite
class GridSprite extends egret.Sprite{
.....
}
显示列表
显示列表用来管理和组织容器和非容器对象,当某个显示对象处在显示列表中,就可以在画面中看到该对象。当显示对象从显示列表中移除后,该对象从画面中消失。在Egret内部维护着一个显示列表。
在这个树状结构中,处于最上层的是“舞台”。对应到程序中,是 stage 对象。舞台是Egret显示架构中最根本的显示容器。每个Egret应有且只有一个stage对象。舞台是这个显示树结构的根节点。
在舞台中,我们还拥有一个主容器。这个容器就是文档类所创建的容器。每一个Egret都会拥有一个文档类,这个文档类必须是一个显示对象容器。