egret基础——控件
Egret引擎使用的开发语言TS:
在ts中
function add(name:string....):void{}
可以改为这样声明:
var add = (name:string...):void=>{},
this() 只能在非无参的数构造方法中使用,意思是调用 无参的构造方法。
1、表示对当前对象的引用!
public class A{ public A getA(){ return this;//表示获取当前实例本身 } }
2、表示类的成员变量,而非函数参数,注意在函数参数和成员变量同名是进行区分!
public class A{ private int a = 0;//位置1 public A getA(int a){ //前面this.a表示 位置1 的a,赋值=号右侧的表示参数a this.a = a; } }
egret 矢量绘图(多边形 -- 直线 -- 多条线段 -- 曲线)
- 文本设制:普通文本--文本内容可以设置
- 输入文本--输入框或者聊天框
- 位图文本--添加特殊字体设置
- 文本操作:创建文本 文本颜色 文本字体 文本样式
var label:egret.TextField = new egret.TextField(); lable.text = "这是个文本" lable.width="" lable.heigth="" lable.textColor="" lable. fontFamily= "" //布局 lable.textAlign = egret.HorizontalAlign.RIGHT(上右下左); //设置文字的粗体和斜体 lable.bold = true; lable.italic = true; this.addChild(lable);
egret动画:
1.Tween缓动动画(界面弹出。道具飞出及特效)
var tw = egret.Tween.get(shp);--shp是设置的小方块
tw.to({x:300,y:100},1000);xy 定义xy坐标的移动位置,1000是移动的时间
2.MovieClip序列帧动画(简称mc 播放序列帧动画--如GIF图 如实现跑动的动作 将动画制作成egret识别的动画格式)
egret计时器:Timer
2个属性
delay --每隔多长时间执行一次
repeatCount --执行的次数(如果次数为0,则表示不停的执行)。
3个方法
atart -- 开始
reset --重新计时
stop --暂停
2个事件
public constructor() { super(); TimerEvent.TIMER --计时过程中触发 TimerEvent.TIMER_COMPLETE --计时结束后触发 //创建一个计时器对象 var timer:egret.Timer = new egret.Timer(500,5);--2个属性 //注册事件侦听器 timer.addEventListener(egret.TimerEvent.TIMER,this.timerFunc,this); timer.addEventListener(egret.TimerEvent.TIMER_COMPLETE,this.timerComFunc,this); //开始计时 timer.start(); //重新计时 timer.reset(); //暂停计时 timer.stop(); } private timerFunc() { console.log("计时"); } private timerComFunc() { console.log("计时结束"); }
创建位图
private onAddToAtage(event:egret.Event){ //资源的加载 RES.addEventlistener(RES.ResourceRvent.GROUP_COMPLETE,this.addimage,this); //找到当前的资源目录 RES.loadConfig("resource/resource.json","resource/"); //组的方式加载资源 RES,loadGroup("组的name") } private addImage(){ var img1:egret.Bitmap = new egret.Bitmap(); img1.texture = RES.getRes("AAA"); this.addChild(img1); }
--资源加载
- 1,资源加载模块
- 2,资源加载模块配置
- 3,初始化资源加载模块
- 4,预加载资源组
- 5,获取资源
3种方式:
- getRes();
- getRseAsync();--异步,
- getResByUrl();--网络
九宫格的使用
var img:egret.Bitmap = new egret.Bitmap(); img.texture = RES.getRes("xxx"); var rect:egret.Rectangle = new egret.Rectangle(30,31,40,41) img.scale9Grid = rect; img.width *=2; img.y = 300; this.addChild(img);
--纹理的填充方式:
var img:egret.Bitmap = new egret.Bitmap(); img.texture = RES.getRes("yaotou"); img.fillMode = egret.BitmapFillMode.REPEAT; img.width *=2; img.heighe *=3; this.addChild(img);
纹理集的使用:
图片放在一张图片上
加载音频资源播放音频
山重水复疑无路,柳暗花明又一村!
专注填坑,少走弯路!