变量
变量是 UML 中可以被读取或者写入的值, 定义方式如下:
let name = value
定义一个变量 name
, 其值为 value
. value
可以是 Float
或 Rect
类型的值, 或结果是 Float
或 Rect
类型的表达式.
变量可以被重复定义, 但只有最后一次定义的值会被使用. 定义变量后, 你可以在新建元素或定义其他变量时使用这个变量.
内置变量
UML 内置了如下变量:
t
: 当前时间, 单位为秒top
: 实际高度与实际宽度之比o
: 滑动距离joined
: 是否已经参与了该活动, 参与了时值为1
, 否则为0
$h
: 用户能滚动的最大高度, 通过设置该变量的值来限制用户的滚动范围
UML 并不具备事件功能, 可以利用
t
,o
和按钮的按下时刻来为页面添加动态效果, 如动画, 换页等.
全局变量
全局变量是在 UML 文件的任何地方都可以被读取或者写入的变量. 全局变量的定义方式如下:
global name = @type
其中, type
只能为 btn
. 此后, 你仍然可以通过 let
的方式写入全局变量, 只有最后一次定义的值会被使用.
活动界面在每一帧都会被重画, 这意味着 UML 在每一帧都会重新计算所有变量的值.
但按钮的一些属性需要在帧之间保持不变, 因此需要使用全局变量.