鸿蒙5 运动健康类行业实践 添加运动计划日历提醒

📢 重磅福利!参与活动赢好礼,马克杯、鼠标垫贴纸、8月1日-12月31日等你来!

点击链接: 华为开发者学堂

场景介绍

添加运动计划日历提醒是运动健康类应用中高频使用场景之一。

本示例基于Grid组件构建自定义日历,实现在选定日期添加运动计划提醒且同步至系统日历功能,并利用RdbStore对日历计划进行持久化存储。

实现思路

  1. 利用Grid组件构建自定义日历。
 
  1. GridRow({ columns: 7 }) {
  2. ForEach() => {
  3. GridCol() {
  4. CalendarItem({
  5. // 日历组件
  6. })
  7. }
  8. }, (item: HmCalendarItem) => JSON.stringify(item))
  9. }
  1. 点击选定日期添加日历计划提醒。
 
  1. .bindSheet(this.isShowSheet, physiologicalSheet({
  2. currentDate: this.currentDate,
  3. sheetClickType: this.sheetClickType,
  4. cancel: () => {
  5. this.sheetCancel()
  6. },
  7. confirm: async () => {
  8. }
  9. })
  1. 利用RdbStore实现持久化存储。
 
  1. export class RDBStoreUtil {
  2. objectiveRDB?: relationalStore.RdbStore;
  3. async createObjectiveRDB(context: Context) {
  4. await this.createNoteTable()
  5. }
  6. }

约束与限制

  • 本示例支持API Version 16 Release及以上版本。
  • 本示例支持HarmonyOS 5.0.4 Release SDK及以上版本。
  • 本示例需要使用DevEco Studio 5.0.4 Release及以上版本进行编译运行。

权限说明

工程目录

 
  1. ├──entry/src/main/ets // 代码区
  2. │ ├──component
  3. │ │ ├──MatterItem.ets // 事项组件
  4. │ │ ├──MyCalendarViewCard.ets // 日历组件
  5. │ │ └──PhysiologicalSheet.ets // 表单
  6. │ ├──entryability
  7. │ │ └──EntryAbility.ets
  8. │ ├──entrybackupability
  9. │ │ └──EntryBackupAbility.ets
  10. │ ├──model
  11. │ │ ├──DataModel.ets // 模型类
  12. │ │ └──DataSource.ets // 模型类
  13. │ ├──pages
  14. │ │ ├──Index.ets // 首页
  15. │ │ └──MyCalendar.ets // 日历组件
  16. │ ├──utils
  17. │ │ ├──AboutEvent.ets // 添加系统日程
  18. │ │ ├──DateUtil.ets // 日期处理工具类
  19. │ │ ├──RDBStoreUtil.ets // 数据库
  20. │ │ └──RequestCalendarPermission.ets // 系统日历权限
  21. │ └──view
  22. │ ├──MyPlan.ets // 计划组件
  23. │ ├──MyCalendarView.ets // 日历组件
  24. │ └──Physiological.ets // 路由页
  25. └──entry/src/main/resources // 应用资源目录

参考文档

Grid

Interface (RdbStore)

代码下载

添加运动计划日历提醒示例代码

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值