項目描述:
用戶可以創建最多 6 個健康生活任務(早起,喝水,吃蘋果,每日微笑,刷牙,早睡),并設置任務目標、是否開啟提醒、提醒時間、每周任務頻率。
用戶可以在主頁面對設置的健康生活任務進行打卡,其中早起、每日微笑、刷牙和早睡只需打卡一次即可完成任務,喝水、吃蘋果需要根據任務目標量多次打卡完成
主頁可顯示當天的健康生活任務完成進度,當天所有任務都打卡完成后,進度為 100%,并且用戶的連續打卡天數加一。當用戶連續打卡天數達到 3、7、30、50、73、99 天時,可以獲得相應的成就。成就在獲得時會以動畫形式彈出,并可以在“成就”頁面查看。
用戶可以查看以前的健康生活任務完成情況。
用戶可通過長按添加 2x2 或 2x4 卡片查看任務完成情況,具體 ArkTS 卡片實現可以參考文檔:健康生活卡片 (ArkTS)。
掌握能力:
AppStorage:應用程序中的單例對象,為應用程序范圍內的可變狀態屬性提供中央存儲。
@Observed 和 @ObjectLink:@Observed 適用于類,表示類中的數據變化由 UI 頁面管理;@ObjectLink 應用于被 @Observed 裝飾類的對象。
@Provide 和 @Consume:@Provide 作為數據提供者,可以更新子節點的數據,觸發頁面渲染。@Consume 檢測到 @Provide 數據更新后,會發起當前視圖的重新渲染。
Flex:一個功能強大的容器組件,支持橫向布局,豎向布局,子組件均分和流式換行布局。List:List 是很常用的滾動類容器組件之一,它按照水平或者豎直方向線性排列子組件, List 的子組件必須是 ListItem,它的寬度默認充滿 List 的寬度。
TimePicker:TimePicker 是選擇時間的滑動選擇器組件,默認以 00:00 至 23:59 的時間區創建滑動選擇器。
Toggle:組件提供勾選框樣式、狀態按鈕樣式及開關樣式。
關系型數據庫(Relational Database,RDB):一種基于關系模型來管理數據的數據庫。
首選項:首選項為應用提供 Key-Value 鍵值型的數據處理能力,支持應用持久化輕量級數據,并對其修改和查詢。后臺代理提醒:后臺代理提醒功能主要提供后臺提醒通知發布接口,開發者可調用這些接口創建定時提醒,包括倒計時、日歷、鬧鐘三種提醒類型。
ArkTS 卡片:卡片框架的運作機制分三大模塊:卡片使用方、卡片管理服務和卡片提供方。卡片使用方:負責卡片的創建、刪除、請求更新以及卡片服務通信。
卡片管理服務:負責卡片的周期性刷新、卡片緩存管理、卡片生命周期管理以及卡片使用對象管理。
卡片提供方:提供卡片顯示內容的應用,控制卡片的顯示內容、控件布局以及控件點擊事件。