你的浏览器禁用了JavaScript, 请开启后刷新浏览器获得更好的体验!
输入关键字进行搜索
搜索:
没有找到相关结果
Monica - 知识达人
赞同来自: Lyr1
176*****233
赞同来自:
Lyr1
//初始化引擎 Laya.init(1280,720); //自定义文件名称 this.mFontName = "diyFont"; this.mBitmapFont = new Laya.BitmapFont(); //这里不需要扩展名,外部保证fnt与png文件同名 this.mBitmapFont.loadFont("font/test.fnt",new Laya.Handler(this,onLoaded)); function onLoaded(){ init(); } function init(){ //如果位图字体中,没放空格,最好设置一个空格宽度 this.mBitmapFont.setSpaceWidth(10); Laya.Text.registerBitmapFont(this.mFontName,this.mBitmapFont); var test = new Laya.Text(); test.font=this.mFontName; test.text = "这是一个文本"; Laya.stage.addChild(test); }
该问题目前已经被锁定, 无法添加新回复
4 个回复
Monica - 知识达人
赞同来自: Lyr1
176*****233
赞同来自:
Lyr1
赞同来自:
Monica - 知识达人
赞同来自:
1.你在UI编辑模式下制作了一个UI界面,在LayaSample文件中只声明了一下这个UI界面,并没有其他的操作。不太明白你为什么要这么做
2.ziti类中预加载字体,加载完成回调你写的是this.onLoaded。导致下边onLoaded函数根本就没有走,也更走不到init函数中
3.init函数中你给test的text赋值为this.labelFont.text,根据你这一步的做法可以猜到你是想用UI界面中的那个文本,但是你在这个类里边根本就没有实例化这个类,所以也是调用不到的。。。由于第2个问题,所以代码也是走不到这里的
总之你这个项目有好几个问题,每一个问题都会导致不显示任何效果
解决方法:
不清楚你这边是想用已经做好的UI界面还是想用代码来实现。
我这边先说下用代码实现的方式,加载UI界面的那种方式你可以先去看下文档
用代码实现的话就不用管LayaSample类了,在ziti类中修改代码,如下所示: