UI篇
开始
UI篇前言
自从我厌倦了寻找,便学会了找到。
前言
- 学习UI之前,请您务必学会Shimmer的使用,UI的中后期应用是围绕脚本展开的。
- 当然,如果您只想做简单的UI,运算也只是简单的数字加减乘除,那就算是不学也行。
- UI的讲解中,我可能会穿插一些开发相关的内容,请自行摘取您需要的信息。
- 为了防止后续这段话被淹没在文字中,我提前在这里单独写一下。
- UI几乎所有属性都是脚本语句,也就是如果您某个属性如果是一个字符串的话,是无法直接读取的。
- 因为Shimmer的字符串是用单引号包裹的,比如
"abc"
,但是yaml语法对于引号好像涉及转义。 - 所以,如果某个属性您想设定为纯文字的话,只需要在开头加上一个
~
即可。 - 比如
texts: "~我是一个纯文字属性值"
- 对于UI系列内容,HUD和Menu是用的同一个配置文件,位于同一个文件夹,如果您是直接在ArcartX的ui目录下建立的ui配置,那么ui的id则是文件名自身。
- 比如
xxx.yml
对应的id就是xxx
,如果是xxx/yyy.yml
,那么id就是xxx/yyy
。 - 如果您是附属开发者,建议注册UI的时候遵循以下格式:
插件名:ID
比如ArcartXAuthmeView:Main
UI的上下文逻辑
- 相信您确实已经学完了Shimmer,下面我简单讲解一下对于UI的上下文。
- 我们先看一下UI的整体配置,这里放置了一个组件做示例
- 不难看出 UI的配置分为两个大板块,一个是
ui
,一个是controls
- 在Shimmer教学中我们提到过载体关键字:
self
,这里讲解一下不同位置的self
所指向的对象。 - 在
ui
这个配置项以内,所有的self
关键字指向的是ui自身。 - 在
controls
这个配置项以内,所有的self
关键字指向的是当前组件。 - 此外,ui作为一个整体,共享同一个本地变量池(
var
、val
),也就是您在ui
块创建的本地变量,在控件中也可引用,反之亦然。