一系列算术函数和运算,其他表盘格式元素利用其解析实时属性值和陀螺效应。
此元素在 Wear OS 4 中推出。
示例
以下示例表达式基于 Wear OS 设备加速度计的 $ x $ 值,用于在任一方向上将某个值旋转最多 5 度:
(5/90)*clamp([ACCELEROMETER_ANGLE_X],0,90) + (-5/90)*clamp([ACCELEROMETER_ANGLE_X],-90,0)
…此表达式相当于以下数学表达式,其中 $ \theta_x $ 表示 $ x $ 方向上的加速度计角度:
函数
表盘格式将以下字符串值识别为函数:
round()
- 将输入值转换为浮点值,然后执行标准的
round()
数学运算。 floor()
- 执行标准的
floor()
数学运算。 ceil()
- 执行标准的
ceil()
数学运算。 fract()
- 返回输入值的小数部分;即,显示在小数点右侧的浮点值部分。
sin()
- 执行标准的
sin()
三角函数运算。 cos()
- 执行标准的
cos()
三角函数运算。 tan()
- 执行标准的
tan()
三角函数运算。 asin()
- 执行标准的
asin()
三角函数运算。返回的值始终在 $ [-\frac{\pi}{2}, \frac{\pi}{2}] $ 的范围内。 acos()
- 执行标准的
acos()
三角函数运算。返回的值始终在 $ [0.0, \pi] $ 的范围内。 atan()
- 执行标准的
atan()
三角函数运算。返回的值始终在 $ [-\frac{\pi}{2}, \frac{\pi}{2}] $ 的范围内。 abs()
- 将输入值转换为浮点值,然后执行标准的
abs()
数学运算。 clamp(,,)
- 将输入值转换为浮点值,然后执行
clamp()
Jetpack 运算,以便使第一个值符合第二个值和第三个值所定义的范围。 rand(,)
生成同时满足以下条件的随机浮点值:
- 大于或等于第一个值。
- 小于或等于第二个值。
假设第一个值小于或等于第二个值。
log()
执行标准的以 $ e $ 为底数的
log()
数学运算。log2()
模拟以 2 为底的对数。此值的计算方法为:用以 10 为底数的对数(输入值的
log10
)除以 $ 2 $ 的以 10 为底数的对数。log10()
执行标准的以 10 为底数的
log10
数学运算。sqrt()
执行标准的
sqrt()
数学运算。cbrt()
执行标准的
cbrt()
数学运算。exp()
执行标准的
exp()
数学运算。expm1()
如果输入值为 $ 1 $,则直接调用
expm1()
数学运算。对于任何其他输入值,执行标准的exp()
数学运算,然后减去 1,从而模拟相应函数。deg()
执行标准的
toDegrees()
数学运算。 $ \frac{\pi}{2} $ 定义为 90 度,$ \pi $ 则定义为 180 度。rad()
执行标准的
toRadians()
数学运算。90 度定义为 $ \frac{\pi}{2} $,180 度则定义为 $ \pi $。pow(,)
执行标准的
pow()
数学运算。输出值始终是浮点数。numberFormat(,)
将第一个值中的数字格式应用于第二个值。
第一个值可以包含以下字符:
#
- 表示数位。,
- 表示多位数字中的逗号分隔符。.
- 表示小数点。
icuText()
将输入日期格式字符串转换为与预期语言区域格式匹配的模式。如果父
PartText
元素包含Localization
元素,则系统会使用该语言区域的格式。否则,请改用 Wear OS 设备的当前语言区域。例如,如果在美国使用设备,则
EE, MMM d, yyyy h:mm a
的输入值会生成以下输出:Tue, Mar 14, 2023 1:59 PM
icuBestText()
将输入日期格式字符串转换为模式与预期格式匹配的当前时间。如果父
PartText
元素包含Localization
元素,则系统会使用该语言区域的格式。否则,请改用 Wear OS 设备的当前语言区域。例如,如果于 2023 年 3 月 14 日下午 1:59 在美国使用设备,则
yyyy MMM d EE a h:mm
的输入值会生成以下输出:Tue, Mar 14, 2023, 1:59 PM
subText(,,)
从第一个值中提取子字符串。第二个值表示第一个值中应作为子字符串起始点的索引(从 0 开始计数)。第三个值表示第一个值中应作为子字符串提取结束点的索引(从 0 开始计数;“从第二个值起,到第三个值终,但不包含第三个值”)。
示例:
subText("abc def", 2, 5)
为c d
subText("abc def", 2, 7)
为c def
textLength()
计算输入字符串的长度。
运算符
表盘格式将以下字符串值识别为运算符:
+
- 一元加号,或多个值相加。同时支持整数和浮点值。
-
- 一元减法,或多个值相减。同时支持整数和浮点值。
*
- 多个整数值或浮点值相乘。
/
2 个整数或浮点值相除。
如果 2 个整数相除的结果为非整数值,则浮点结果将保留小数部分。例如,$ \frac{1}{2} = 0.5 $。
此外,表达式 $ \frac{x}{0} $ 的求值结果为
0
,其中 $ x $ 为任意整数。%
2 个整数或浮点值的模除。
如果两个运算数均为整数,则结果为这两个值相除的余数。例如,$ 19 \bmod 7 = 5 $。
如果至少一个运算数为浮点数,则结果为与余数对等的浮点值;例如,$ 19.0 \bmod 7 = 5.0 $。
~
按位“非”运算符。示例如下:
~1
为 $ -2 $~0
为 $ -1 $
!
逻辑“非”运算符,支持双重否定。示例如下:
- $ !2 $ 为
false
- $ !!0 $ 为
true
|
按位“或”运算符。支持 2 个以上的输入值。示例如下:
- $ 1 | 0 = 1 $
- $ 1 | 2 | 4 = 7 $
||
- 逻辑“或”运算符。
&
- 按位“与”运算符。仅支持 2 个输入值。
&&
- 逻辑“与”运算符。
(
- 左圆括号。用于更改标准运算的顺序,其中乘法和除法通常优先于加法和减法。
)
- 右圆括号。用于更改标准运算的顺序,其中乘法和除法通常优先于加法和减法。
<
- “小于”比较运算符。比较整数值与对等的浮点值时,结果为
false
。 <=
- “小于或等于”比较运算符。比较整数值与对等的浮点值时,结果为
true
。 >
- “大于”比较运算符。比较整数值与对等的浮点值时,结果为
false
。 >=
- “大于或等于”比较运算符。比较整数值与对等的浮点值时,结果为
true
。 - “
?
”和“:
” 支持三元运算。常规格式如下:
condition ? value_if_true : value_if_false
支持使用括号进行嵌套三元运算。
,
对接受多个参数的函数中的值进行分隔。
"
放置在值的开头和结尾时,表示表盘格式应将值解读为字符串。
==
比较是否相等。比较整数值与对等的浮点值时,结果为
true
。!=
比较是否不等。比较整数值与对等的浮点值时,结果为
false
。
为您推荐
- 注意:当 JavaScript 处于关闭状态时,系统会显示链接文字
- SourceType
- ListConfiguration
- PartText