可编辑表盘
可编辑 Widget
值 | 说明 |
---|---|
hmUI.edit_type.STEP | 步数 |
hmUI.edit_type.BATTERY | 电量 |
hmUI.edit_type.HEART | 心率 |
hmUI.edit_type.CAL | 消耗 |
hmUI.edit_type.PAI | PAI |
hmUI.edit_type.DISTANCE | 距离 |
hmUI.edit_type.AQI | 空气质量 |
hmUI.edit_type.HUMIDITY | 湿度 |
hmUI.edit_type.UVI | 紫外线 |
hmUI.edit_type.DATE | 日期 |
hmUI.edit_type.WEEK | 星期 |
hmUI.edit_type.WEATHER | 天气 |
hmUI.edit_type.TEMPERATURE | 温度 |
hmUI.edit_type.SUN | 日出日落 |
hmUI.edit_type.STAND | 站立 |
hmUI.edit_type.SUN_RISE | 日出 |
hmUI.edit_type.SUN_SET | 日落 |
hmUI.edit_type.WIND | 风力 |
hmUI.edit_type.WIND_DIRECTION | 风向 |
hmUI.edit_type.SPO2 | 血氧 |
hmUI.edit_type.STRESS | 压力 |
hmUI.edit_type.FAT_BURN | 燃脂 |
hmUI.edit_type.FLOOR | 爬楼 |
hmUI.edit_type.ALTIMETER | 压强 |
hmUI.edit_type.BODY_TEMP | 温度 |
hmUI.edit_type.MOON | 月相 |
hmUI.edit_type.APP_PAI | APP_PAI 暂时无用 |
hmUI.edit_type.COUNT_DOWN | 倒计时 |
hmUI.edit_type.STOP_WATCH | 秒表 |
hmUI.edit_type.SLEEP | 睡眠 |
hmUI.edit_type.ALARM_CLOCK | 闹钟 |
层级
- 注意 tips_x tips_y 的坐标是相对于组件内的 x y 所以 如果 tips 在组件上方 需要写负值
getProperty(hmUI.prop.CURRENT_TYPE)
调用此属性会返回当前用户选择 type
类型 使用此 type
来绘制不同的组件
const groupX = 153
const groupY = 246
editGroup = hmUI.createWidget(hmUI.widget.WATCHFACE_EDIT_GROUP, {
edit_id: 101,
x: groupX,
y: groupY,
w: 148,
h: 148,
select_image: rootPath + 'mask/select.png',
un_select_image: rootPath + 'mask/select.png',
default_type: hmUI.edit_type.HEART,
optional_types: [{ type: hmUI.edit_type.HEART, preview: rootPath + 'preview/bat.png' }],
count: 1,
tips_BG: rootPath + 'mask/text_tag.png',
tips_x: 172 - groupX,
tips_y: 210 - groupY,
tips_width: 110,
tips_margin: 10 // optional, default value: 0
})
const editType = editGroup.getProperty(hmUI.prop.CURRENT_TYPE)
switch (editType) {
case hmUI.data_type.HEART:
this.drawHeartWidget(groupX, groupY)
break
case hmUI.data_type.BATTERY:
break
}
//100%mask
maskCover = hmUI.createWidget(hmUI.widget.WATCHFACE_EDIT_MASK, {
x: 0,
y: 0,
w: 454,
h: 454,
src: rootPath + 'mask/mask100.png',
show_level: hmUI.show_level.ONLY_EDIT
})
//70%msk
mask = hmUI.createWidget(hmUI.widget.WATCHFACE_EDIT_FG_MASK, {
x: 0,
y: 0,
w: 454,
h: 454,
src: rootPath + 'mask/mask70.png',
show_level: hmUI.show_level.ONLY_EDIT
})
以全屏幕的控件提供给用户选择展示内容,尝试以下代码,省略部分与上文一致
editGroup = hmUI.createWidget(hmUI.widget.WATCHFACE_EDIT_GROUP, {
// ...
select_list: {
title_font_size :34 ,
title_align_h: hmUI.align.CENTER_H ,
list_item_vspace: 8,
list_tips_text_font_size: 32,
list_tips_text_align_h : hmUI.align.LEFT,
}
})