HarmonyOS应用开发实战:猫猫大作战-Form Kit 动态卡片
📅 2026/7/29 18:20:53
👁️ 阅读次数
📝 编程学习
前言
Form Kit(卡片服务)是 HarmonyOS 的桌面卡片能力。在「猫猫大作战」中,Form Kit 用于在桌面上展示今日高分和签到状态。
一、卡片配置
// form_config.json { "forms": [ { "name": "ScoreWidget", "description": "显示最高分", "src": "./ets/forms/ScoreWidget.ets", "window": { "designWidth": 240, "autoDesignWidth": true }, "updateEnabled": true, "scheduledUpdateTime": "08:00", "updateDuration": 2, "defaultDimension": "2*2", "supportDimensions": ["2*2", "2*4"] } ] }二、卡片更新
import{formProvider}from'@kit.FormKit';// 主动更新卡片asyncfunctionupdateWidget(formId:string,score:number):Promise<void>{awaitformProvider.updateForm(formId,{'score':score.toString(),'playerName':AppStorage.get<string>('playerName')??'玩家','updateTime':newDate().toLocaleTimeString('zh-CN'),});}三、卡片生命周期
| 阶段 | 回调 | 操作 |
|---|---|---|
| 创建 | onCreateForm | 初始化数据 |
| 更新 | onUpdateForm | 刷新数据 |
| 删除 | onDeleteForm | 清理资源 |
| 可见性 | onVisibilityChange | 暂停/恢复 |
四、最佳实践
- 定时更新:
scheduledUpdateTime每日更新 - 内容简洁:2×2 展示核心数字
- 更新频率适中:不少于 30 分钟
- 配置在 module.json5:注册卡片 Ability
总结
Form Kit 在桌面展示游戏卡片,显示高分和签到状态。核心要点:form_config配置卡片、updateForm更新内容、 定时更新保持新鲜。
如果这篇文章对你有帮助,欢迎点赞👍、收藏⭐、关注🔔,你的支持是我持续创作的动力!
相关资源:
- Form Kit 文档
- 第 165 篇:live-view
- 第 167 篇:form-ability
- 第 169 篇:scheduled-update
编程学习
技术分享
实战经验