組件(Component)是界面搭建與顯示的最小單位。
組件根據(jù)功能可以分為以下五大類:基礎(chǔ)組件、容器組件、媒體組件、繪制組件、畫布組件。
使用資源引用類型
Resource是資源引用類型,用于設(shè)置組件屬性的值。推薦大家優(yōu)先使用Resource類型,將資源文件(字符串、圖片、音頻等)統(tǒng)一存放于resources目錄下,便于開發(fā)者統(tǒng)一維護(hù)。同時系統(tǒng)可以根據(jù)當(dāng)前配置加載合適的資源,例如,開發(fā)者可以根據(jù)屏幕尺寸呈現(xiàn)不同的布局效果,或根據(jù)語言設(shè)置提供不同的字符串。
我們可以將這些硬編碼寫到entry/src/main/resources下的資源文件中
$r('app.type.name')”的形式引用應(yīng)用資源
類似 android 中的 values.xml strings.xml dimen.xml 等文件
- Column表示沿垂直方向布局的容器。
- Row表示沿水平方向布局的容器。
主軸和交叉軸概念
justifyContent : 設(shè)置子組件在主軸方向上的對齊格式。
alignItems : 設(shè)置子組件在交叉軸方向上的對齊格式。
List組件和Grid組件的使用
List 組件使用 forEach 渲染 ListItem 來構(gòu)建子item
List組件的divider屬性可以設(shè)置分割線
List組件提供了一系列事件方法用來監(jiān)聽列表的滾動
List組件里面的列表項默認(rèn)是按垂直方向排列的,如果您想讓列表沿水平方向排列,您可以將List組件的listDirection屬性設(shè)置為Axis.Horizontal。
跟 List 一樣 ,使用forEach 來渲染,GridItem 來構(gòu)建 子item
List 性能優(yōu)化 懶加載,設(shè)置寬高
https://developer.harmonyos.com/cn/docs/documentation/doc-guides-V3/ui-ts-performance-improvement-recommendation-0000001477981001-V3#ZH-CN_TOPIC_0000001477981001__%E6%8E%A8%E8%8D%90%E4%BD%BF%E7%94%A8%E6%95%B0%E6%8D%AE%E6%87%92%E5%8A%A0%E8%BD%BD
Tabs組件僅可包含子組件TabContent,每一個頁簽對應(yīng)一個內(nèi)容視圖即TabContent組件。
說明
TabContent組件不支持設(shè)置通用寬度屬性,其寬度默認(rèn)撐滿Tabs父組件。
TabContent組件不支持設(shè)置通用高度屬性,其高度由Tabs父組件高度與TabBar組件高度決定。
您可以使用Tabs組件接口中的參數(shù)barPosition設(shè)置頁簽位置。此外頁簽顯示位置還與vertical屬性相關(guān)聯(lián),vertical屬性用于設(shè)置頁簽的排列方向,當(dāng)vertical的屬性值為false(默認(rèn)值)時頁簽橫向排列,為true時頁簽縱向排列。
- TabContent的tabBar屬性除了支持string類型,還支持使用@Builder裝飾器修飾的函數(shù)。您可以使用@Builder裝飾器,構(gòu)造一個生成自定義TabBar樣式的函數(shù)
- 最后還需要給Tabs添加onChange事件,Tab頁簽切換后觸發(fā)該事件