我爱编程

004 创建一个文本框

2018-02-03  本文已影响26人  水电梁师傅
class GameStart{
    constructor()
    {
        Laya.init(600,400);
        //
        Laya.stage.scaleMode = Laya.Stage.SCALE_NOSCALE;
        Laya.stage.alignH = Laya.Stage.ALIGN_CENTER;
         Laya.stage.alignV = Laya.Stage.ALIGN_CENTER;
         Laya.stage.screenMode = Laya.Stage.SCREEN_NONE;
         var tx:Laya.Text= new Laya.Text();
//       var tx = new Laya.Text();
         tx.text = 'boom';
         
         tx.color = '#ffffff';
         tx.pos(Laya.stage.width/2,Laya.stage.height/2);
         Laya.stage.addChild(tx);
    }
}

基于003的代码继续

起一个变量并且给变量名 var tx
然后呢,给变量一个类型Laya.Text
应该有人注意到了,这里其实可以直接写成

var tx = new Laya.Text();的

这里是

var tx:Laya.Text = new Laya.Text()

这里的:号,是ts的语法,表示类型推导,一般来说,编程语言声明一个变量,要么是

脚本语言
var aaa = 'aaa' //由值判断他是否是字符串

编译语言

String aaa = "aaa";//声明一个变量就给他类型

typescript是根据es6标准的,他根植于es3/es5,在兼容es6之前版本的同时,新增了类型推导,也就是说如果这样写、

var tx:String = 'aaa'

会自动帮你声明这个变量是字符串。在编译es5版本的时候,编译器会帮助你编译成更好的es5版本的写法,这样的好处在于如果一开始就知道是字符串,那么这样生成的代码会有特比的优化,运行起来比自己写的无类型变量效率高一些

Laya.Text 是内置的文本类,专门输出文本,可以类比一下他本质上就是一个div,专门让人写东西的
他的内置属性有

Text.text  // 文本内容
 Text.color = '#ffffff';  //文本颜色
 Text.pos(Laya.stage.width/2,Laya.stage.height/2); //文本位置

最后将实例化出来的文本框放入我们的舞台,也就是一开始就存在的全局laya变量;里头

Laya.stage.addChild(tx);

运行一下代码

image.png

就可以看到创建的文本框了


image.png
上一篇 下一篇

猜你喜欢

热点阅读