学习Eegret UI Editor-如何使用自己做的exml皮肤文件

我这边是直接用Eegret UI Editor写好了自己的exml文件,如下图所示
随便做的几个篮球火3vs3小人
根据白鹭官方的B站教程,使用这个exml文件的核心就是要将添加到stage舞台的类和这个exml文件绑定起来,有两种方式,接下来听我好好地给大伙娓娓道来(装上一逼)。

两种方法都需要做的文件准备:

创建好自己的exml并放入resource文件夹下的eui_skins下

  1. 第一种方式:(自定义场景类绑定exml文件)
    先创建好需要加载到舞台的自定义的类:
class BallGame extends eui.Component implements eui.UIComponent{ constructor(){
    super()
    //这一行是第一种方法需要用到的而已,第二种就不用了
    this.skinName="resource/eui_skins/my_skin/new_skin.exml" }

protected partAdded(partName: string, instance: any): void {
    super.partAdded(partName,instance) } protected childrenCreated(): void {
    super.childrenCreated() } }

eui.Component是继承自 egret.DisplayObjectContainer容器类并实现一个UIComponent接口的一个类,而UIComponent是一个源码的接口

如果你问我为什么要继承类这个又实现那个接口的话,那我只能说,“想知道我的秘密吗?想要的话就给你好了,去找吧!我把这段代码的秘密都放在了源码里了”

类创建成功后,设置属性skinName,源码里的定义是

 /**
         * 皮肤标识符。有效值可为:皮肤类定义,皮肤类名,皮肤实例,EXML文件内容,或外部EXML文件路径,
         * @version Egret 2.4
         * @version eui 1.0
         * @platform Web,Native
         * @language zh_CN
  */
        skinName: any;

之后源码会对skinName进行一个解析(对,想知道就去看源码,这里不方便说太多,因为我懒)
做完上面步骤之后,最重要一步来了,就是别忘了在入口类里将你的场景类添加到舞台上,

protected createGameScene(): void {
 	let gameball=new BallGame()
    this.addChild(gameball)
    //两种方式均可
    // this.addChild(new BallGame())
    }
  1. 第二种方式:(自定义场景类+直接修改default.thm.json)
    把方式一里的this.skinName="***“给删掉,主打的就是一个"低代码”
    找到resource目录下的default.thm.json文件,直接修改!
{
	"skins": {
		"eui.Button": "resource/eui_skins/ButtonSkin.exml",
		"eui.CheckBox": "resource/eui_skins/CheckBoxSkin.exml",
		"eui.HScrollBar": "resource/eui_skins/HScrollBarSkin.exml",
		"eui.HSlider": "resource/eui_skins/HSliderSkin.exml",
		"eui.Panel": "resource/eui_skins/PanelSkin.exml",
		"eui.TextInput": "resource/eui_skins/TextInputSkin.exml",
		"eui.ProgressBar": "resource/eui_skins/ProgressBarSkin.exml",
		"eui.RadioButton": "resource/eui_skins/RadioButtonSkin.exml",
		"eui.Scroller": "resource/eui_skins/ScrollerSkin.exml",
		"eui.ToggleSwitch": "resource/eui_skins/ToggleSwitchSkin.exml",
		"eui.VScrollBar": "resource/eui_skins/VScrollBarSkin.exml",
		"eui.VSlider": "resource/eui_skins/VSliderSkin.exml",
		"eui.ItemRenderer": "resource/eui_skins/ItemRendererSkin.exml",
		"BallGame": "resource/eui_skins/my_skin/new_skin.exml"
	},
	"autoGenerateExmlsList": true,
	"exmls": [
		"resource/eui_skins/ButtonSkin.exml",
		"resource/eui_skins/CheckBoxSkin.exml",
		"resource/eui_skins/HScrollBarSkin.exml",
		"resource/eui_skins/HSliderSkin.exml",
		"resource/eui_skins/ItemRendererSkin.exml",
		"resource/eui_skins/my_skin/new_skin.exml",
		"resource/eui_skins/PanelSkin.exml",
		"resource/eui_skins/ProgressBarSkin.exml",
		"resource/eui_skins/RadioButtonSkin.exml",
		"resource/eui_skins/ScrollerSkin.exml",
		"resource/eui_skins/TextInputSkin.exml",
		"resource/eui_skins/ToggleSwitchSkin.exml",
		"resource/eui_skins/VScrollBarSkin.exml",
		"resource/eui_skins/VSliderSkin.exml",
		"resource/eui_skins/my_skin/new_skin.exml"
	],
	"path": "resource/default.thm.json"
}

注意每个组的最后一行,都是我新添加进去的,然后Ctrl+S保存,直接运行,搞定

👴最爱的篮球火3vs3场面出来辣
在这里插入图片描述
本次装杯到此结束,谢谢大家。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
转js代码 def login(): # 登录 headers = { 'Host': 'api.hellobike.com', 'sid': '13e41f4ad36149df99aecdec38ec2afe', 'user-agent': 'Mozilla/5.0 (Linux; Android 8.1.0; Pixel XL Build/OPM4.171019.021.P1; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/61.0.3163.98 Mobile Safari/537.36', 'inner_action': 'user.account.login', 'inner_start_time': '1678247224433', 'hello_token': '3997302216749350083', 'systemcode': '62', 'chaos': 'true', 'signature': '5c946104f5ac7759a2f26b1acefb91fc531ee050', 'nonce': '3e02e95f-be75-4f3e-9d7e-e0b6be1aa277', 'timestamp': '1678247224435', 'fingerprint-hash': '281524c553a4cad9b72604473bf67b587eb1ba1060cbde2585fe38d397cf95fc', 'key-version': '1678240824', 'content-type': 'application/json; charset=UTF-8', } data = 'rr6QPSqA5+HwVd3UzYs+YZjhGvWdG23MEj0VNbNn17tCX3IaI5tPU+ZTMXFVJ0opvoW73DRAxy/9g4wTkJJvHS9uUmstZCE3OY0dHD2hygZq6cOl3TdoTivut6yVhCnmk0EXMl25ic5yc62zdUVUvpKuayhsPraoAOgH5uIRIeNMSC42XCcT7I/AGkW1KNGmGjbvtljiqQzK6BP7P5y2QjHwVUpW7/TN4JKmLYQ2cgbBp8gKmOf5vm+Mdj+dxo1s3rmpxqbbDCW8Tta9XRNURK+6quP9ivaxGWO5JUHODJwuUS2SP6075ldiYNZoKlQnkFu5ZWLECK7GwRWUhHMtBogSDMlgpWWV+k/DiifFQRNOTtatlpSo3wtVfcEVfA/tTWOCOWD8ClSKKvI+Wt20Ooi5xPou2mhe2R4YeGOCAY7K4ZoKOj/P8kZTkiX94HEtLrV6TBCvZK2o70P/YThqqC0P4onuNXZgziWFalCw96GCR/2pGd+uSRDGGodr1sTAAl+i7cihzFjGFbGx24My+XVleHhOALwzpJvPmRrgomyaQSB7GSqB5fmu7aafCTEO3MJzDk20RBtUndvwYqwNhdOA+xyVvEc8kCn2AJcM42ZQxYuIFRTUgwU2V8HPiArl7HA9+L1fCkV08Xjdm2XbCs/nclUMc71TZqJt91oFIprDUMiFG+fzzpupMvwYYjQMgjz7mwLlL43OwFEmQoTiE54fJ9bNv+TMfOrZ5UCuVyuAedbF8mRweZ6O7A1Uzsu7AFdqj5UpGhpHCfxh7fS+dA==' response = requests.post('https://api.hellobike.com/auth', headers=headers, data=data)
07-20

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

冢口宏一

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值