Laya自定义组件

laya2.1.1.1

参考:

预设使用

 

一 没有自定义组件

教程翻了几遍,没有自定义组件,论坛搜了下,说是不能使用。

 

二 预置件做自定义组件

预置件无法右键创建。

又去翻教程。终于知道预置件怎么创建了。就是选中一个组件,然后右上角有个按钮,设置为预置件。

选择了分离模式导出,但是预置件代码不能像scene一样生成在layaMaxUI.ts中,然后去继承。

仿照laya的demo中dropbox预置件的写法。现在创建关卡图标预制体LevelFlag.prefab和代码逻辑LevelFlag.ts。

在代码逻辑LevelFlag.ts中获取预制体组件,用getChildByName获取。比较麻烦。

获取预置件上挂着的代码逻辑LevelFlag.ts,需要使用getComponent。

let levelFlag:LevelFlag = this.flag.getComponent(Laya.Script);

  

三 使用Scene做自定义组件

现在只能用Scene做自定义组件。比如我现在要创建10个关卡图标自定义组件LevelFlag

1. 创建一个scene命名为LevelFlag.scene

2. LevelFlag.scene绑定runtime为逻辑类LevelFlag.ts

3. 拖动这个LevelFlag.scene到其他scene中使用,命名为flag

4. 在LayaMaxUI.ts里获得这个组件类型是flag:any, -_-!,   代码里要自己转换一下   flag  as LevelFlag使用

原文地址:https://www.cnblogs.com/gamedaybyday/p/11565747.html