参考:this
预设使用blog
教程翻了几遍,没有自定义组件,论坛搜了下,说是不能使用。继承
预置件没法右键建立。教程
又去翻教程。终于知道预置件怎么建立了。就是选中一个组件,而后右上角有个按钮,设置为预置件。ip
选择了分离模式导出,可是预置件代码不能像scene同样生成在layaMaxUI.ts中,而后去继承。get
仿照laya的demo中dropbox预置件的写法。如今建立关卡图标预制体LevelFlag.prefab和代码逻辑LevelFlag.ts。class
在代码逻辑LevelFlag.ts中获取预制体组件,用getChildByName获取。比较麻烦。im
获取预置件上挂着的代码逻辑LevelFlag.ts,须要使用getComponent。命名
let levelFlag:LevelFlag = this.flag.getComponent(Laya.Script);
如今只能用Scene作自定义组件。好比我如今要建立10个关卡图标自定义组件LevelFlagdemo
1. 建立一个scene命名为LevelFlag.scene
2. LevelFlag.scene绑定runtime为逻辑类LevelFlag.ts
3. 拖动这个LevelFlag.scene到其余scene中使用,命名为flag
4. 在LayaMaxUI.ts里得到这个组件类型是flag:any, -_-!, 代码里要本身转换一下 flag as LevelFlag使用