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