Appearance
小部件编辑器——变量 #
Formula 支持的变量类型 #
变量类型 | 用户使用方式 (以``包裹) | Xml 中保存方式 [@|#]表示变量类型) |
---|---|---|
系统全局变量 | `GL.xxx` | [@|#]global_xxx_var |
Provider 接口变量 | `PD.xxx.xxx.xxx` | [@|#]provider_xxx_var |
Broadcast 广播接口变量 | `BD.xxx.xxx` | [@|#]broad_xxx_var |
Sensors 传感器变量 | `SS.xxx.xxx` | [@|#]sensor_xxx_var |
图层属性变量 | `图层名.xxx` | [@|#]图层变量名_xxx |
用户自定义变量 | 变量名 | [@|#]user_xxx_var |
数据源 #
编辑器中的用法 #
- 在表达式中使用时必须以``包裹
示例:
`PD.weather.actualWeatherData.city_name`
`GL.battery_leve`
`PD.weather.afi.pm25`+variable1+`GL.battery_level`+'abahc'
`PD.weather.weatherData.tmphighs`[1] + '度'
生成XML规则 #
- provider变量加前缀 provider_
- 全局变量加前缀 global_
- . 替换为 _
- 变量全部以_var 结尾
示例:
xml
<!-- provider 返回 -->
<VariableBinders>
<ContentProvider _system='true'>
<!-- provider 返回变量 -->
<Variable name="provider_weather_actualWeather_city_name_var"
type="string" column="city_name" />
</ContentProvider>
</VariableBinders>
<!-- 系统全局变量 -->
<Var name="global_battery_level_var" type="number"
expression="#battery_level" _system="true">
<!-- 用户自定义变量 -->
<Var name="user_variable1_var" type="number"
expression="#battery_level" _isFormula="true" _user="true" >
变量 #
- 变量赋值
TypeScript
// 数字常量
1
// 文本常量
abc
// 数字列表
1,2,3,4
// 文本列表, 默认使用英文逗号为分隔符,若非分隔符,应转义 \,
a,b,c,d
// 表达式
1+'a'+`GL.xxx`
// 表达式数组
1+'a'+`GL.xxx`,'b', variable+1
- 变量访问
TypeScript
// 数字
#variable
// 文本
@variable
// 数字列表
#variable[index]
// 数字列表
@variable[index]
// provider 数组
`PD.weather.weatherData.tmphighs`[index]