AI智能
改变未来

Egret UI(一):游戏场景皮肤创建


场景创建:

1.创建

EUI

项目

2.用

Egret UI Editor

打开项目

3.创建场景(

新建皮肤

  • 将场景创建在
    resource/eui_skins/

    目录下

  • 创建场景
    resource/eui_skins/myskins/StartSceneSkin.exml
  • 配置场景显示内容(
    场景

    控件

    约束

    尺寸位置


4.命令运行项目

egret run -a

发现项目无法显示场景,需要在代码中引用场景

5.引用场景(皮肤)

方法一

  • 创建引用场景类
    eui-demo/src/StartScene.ts
  • 具体代码
    class StartScene extends eui.Component implements eui.UIComponent {constructor() {super();// 绑定场景this.skinName = \'resource/eui_skins/myskins/StartSceneSkin.exml\'}protected partAdded(partName: string, instance: any): void {super.partAdded(partName, instance);}protected childrenCreated(): void {super.childrenCreated();}}
  • 这个时候你可能急着去运行项目了,发现没什么luan用,不报错也不展示
      因为你没在

      main.ts

      引用使用这个场景

    • this.addChild(new StartScene());

    方法二

    • 创建引用场景类
      eui-demo/src/StartScene.ts
  • 具体代码
    class StartScene extends eui.Component implements eui.UIComponent {constructor() {super();}protected partAdded(partName: string, instance: any): void {super.partAdded(partName, instance);}protected childrenCreated(): void {super.childrenCreated();}}
  • 这个时候你可能急着去运行项目了,发现没什么luan用,不报错也不展示
      因为你没在

      main.ts

      引用使用这个场景

    • this.addChild(new StartScene());
  • 然后运行还是不显示,因为没有绑定场景
      绑定方法为修改

      resource/default.thm.json

      配置文件

    {\"skins\": {\"StartScene\": \"resource/eui_skins/myskins/StartSceneSkin.exml\"},\"exmls\": [\"resource/eui_skins/myskins/StartSceneSkin.exml\"]}

    6.运行项目

    • 命令:
      egret run -a
    • 来吧,展示(
      可以用 Egret Inspector 工具进行调试

      ):

    可能问题:

    当创建场景时没有创建在

    resource/eui_skins/

    这个目录下,而是创建在了

    resource/

    这个目录下,创建为

    resource/my_skins/MySceneSkin.exml

    ,这个时候我们在

    Egret UI Editor

    软件中无法看到我们创建的场景。

    • 解决方法(
      配置 egretProperties.json 文件

      ):

    {\"eui\": {\"exmlRoot\": [\"resource/eui_skins\",\"resource/my_skins\"],\"themes\": [\"resource/default.thm.json\"],\"exmlPublishPolicy\": \"commonjs\"}}
    • 这个时候我们就能看见场景了
    • 后边的步骤就都一样了
  • 赞(0) 打赏
    未经允许不得转载:爱站程序员基地 » Egret UI(一):游戏场景皮肤创建