当前位置: 首页 > article >正文

Laya中runtime的用法

文章目录

    • 0、环境:2.x版本
    • 1、runtime是什么
    • 2、使用实例
      • 情景
      • 需要做
    • 3、script组件模式

0、环境:2.x版本

1、runtime是什么

简单来说,如果创建了一个scene,加了runtime和没加runtime的区别就是:

  • 没加runtime,你new这个scene出来,不行代码操作,和你在IDE上看到的一样。
  • 加了runtime,你new出这个scene,实际上就已经可以有代码逻辑了。
  • 总而言之,就是加了runtime,运行时new出来的就是runtime指定的类(正常这个类继承了ui)

2、使用实例

情景

游戏里面有n种弹窗,比如有2种:
在这里插入图片描述
在这里插入图片描述

你想要:

  • 不用重复拼(替换资源时可以一键替换)
  • 能够将一些通用的展示内容配置化(或者说想要统一操作某个东西)
  • 一次代码修改给所有scene皮肤增加相同逻辑

需要做

  • 将这种做成组件【DialogUI,下面这个就代表组件】,别的地方使用直接拖过来用(不用重复拼)
  • 给【DialogUI】增加一个类【DialogCode】,这个类继承了你的UI,有n个【DialogUI】就继承n个,即有【DialogCode1~n】。前面提到了可能有n个逻辑类似的弹窗,这里就需要将这些通用逻辑抽到一个公共逻辑类【DialogCodeLogicComm】,每个【DialogCode】只需要在必要的生命周期那调用下【DialogCodeLogicComm】的必要接口即可。这里便是能够一次代码修改给所有scene皮肤增加相同逻辑。
  • 最后记得将【DialogCode1】拉到【DialogUI1】里,【DialogCode2】拉到【DialogUI2】里,依次类推。
  • 新增一个也很简单,创建个命名规范的【DialogUIx】,创建个【DialogCodex-这个类是极简的】,将【DialogCodex】拖入到【DialogUIx】的runtime即可,不用写之前的通用逻辑,通用逻辑在【DialogCodeLogicComm】类了。
  • 总结:不同的scene皮肤+runtime+runtime类内部带一个公共逻辑块类,实现多个样式一套逻辑。

3、script组件模式

也可以实现类似的功能,更多是一些通用的逻辑,可以用于ui(比如类似运行时控制器效果),也可以是非ui,关键还是看需求。


http://www.kler.cn/a/578095.html

相关文章:

  • 机器学习之强化学习
  • Locker 是 Godot 的一个开源插件,它提供了一种快速且可扩展的方式来使用不同的策略保存和加载数据,并且具有开箱即用的 JSON 和加密功能。
  • 【Windows下Gitbook快速入门使用】
  • 【GPT入门】第5课 思维链的提出与案例
  • 2. 电脑主机上配置机器人环境(具身智能机器人套件)
  • MQ 消息发送可靠性保证 —— 整合 Spring Retry 重试框架 + 补偿发送方案
  • 【网络协议详解】——路由策略技术(学习笔记)
  • Apache Kafka 在生产环境中的管理与优化:从理论到实践
  • manus本地部署使用体验
  • 使用 Java 执行 SQL 语句和存储过程
  • [含文档+PPT+源码等]精品基于Python实现的校园小助手小程序的设计与实现
  • Java面试第九山!《SpringBoot框架》
  • Golang:实时消息交互系统
  • 物联网中 对设备监测和设备控制
  • C语言学习笔记-进阶(7)字符串函数3
  • 树莓派学习(一)——3B+环境配置与多用户管理及编程实践
  • SQL注入的原理及详细运用
  • 在 Docker 中搭建GBase 8s主备集群环境
  • Banana Pi OpenWRT One Wifi6 OpenWrt社区官方开源路由器评测
  • mysql忘记初始临时密码解决方法