運動記錄Demo的列表界面介紹
前言
在參加了"HarmonyOS ArkUI入門訓練營——健康生活實戰(zhàn)"后,了解并學習了聲明式UI開發(fā)框架及組件用法,本文是對筆者結營作品中的列表界面作一個小分享,涉及到List組件和Tabs組件的使用。
概述
這是一個運動記錄的應用,主要用于管理健康記錄運動??梢蕴砑舆\動信息,包括運動名稱、運動時長,并自動計算消耗的卡路里,在記錄頁面可以查看所添加的運動記錄。其界面效果圖如下:
正文
一、新建運動數(shù)據(jù)類
在MainAbility目錄下新建文件夾model,在model文件夾中新建兩個ets文件,分別命名為SportsData,SportsDataModel,如圖:
在 SportsData 中添加代碼:
在 SportsDataModel 中添加代碼:
二、List組件的使用
1、定義子組件的布局
為了方便預覽,可以用 @Preview 裝飾,然后打開預覽器,點擊圖示位置顯示。
為了方便調試,可以先把數(shù)據(jù)用靜態(tài)數(shù)據(jù)代替,代碼如下。
2、列表組件的渲染
Scroll是可滾動容器組件,傳入運動類的數(shù)組,用ForEach循環(huán)遍歷渲染,傳參給子組件SportsGridItem。
到此步實現(xiàn)的是在一個列表里把所有子項列出來,但想要的效果是按類別將子項分類來顯示,那就繼續(xù)看下去吧~
三、Tabs組件的使用
為了讓頁簽更好看,從文檔中可以看到TabContent的TabBar屬性可選CustomBuilder類型,進一步可查看該自定義的組件屬性方法,需要用 @Builder 裝飾。
看完文檔后,那就用起來~,代碼如下:
為了實現(xiàn)按類別進行列表展示,即要對數(shù)據(jù)類的Category進行檢索分類來渲染。通過學習直播課程,知道有filter這個方法,可以對每個子項遍歷使用。
于是總體代碼如下:
最后,在底部的頁簽組件中添加使用、以及運動類和記錄類的數(shù)據(jù)使用、搜索界面的實現(xiàn)等內容,預告在下一篇文章啦,歡迎評論區(qū)交流~
結語
以上就是本次的小分享啦!