鴻蒙系統(tǒng)現(xiàn)已經(jīng)有超過(guò)千萬(wàn)的用戶升級(jí),后續(xù)的用戶數(shù)量非??捎^,鴻蒙開(kāi)發(fā)人才數(shù)量稀缺,小千精心為大家整理了全套的鴻蒙系統(tǒng)開(kāi)發(fā)教程,今天我們介紹一下Component基礎(chǔ)布局,實(shí)現(xiàn)用戶交互非常重要的概念之一,同學(xué)們帶好小本本。
在HarmonyOS的應(yīng)用中,所有的用戶交互操作在Ability的應(yīng)用中,主要是用來(lái)顯示所有被查看和交互的內(nèi)容的。
應(yīng)用中所有的用戶界面元素都是由Component和ComponentContainer對(duì)象構(gòu)成。Component是繪制在屏幕上的一個(gè)對(duì)象,用戶能與之交互。ComponentContainer是一個(gè)用于容納其他Component和ComponentContainer對(duì)象的容器。
Java UI框架提供了一部分Component和ComponentContainer的具體子類,即創(chuàng)建用戶界面(UI)的各類組件,包括一些常用的組件(比如:文本、按鈕、圖片、列表等)和常用的布局(比如:DirectionalLayout和DependentLayout)。用戶可通過(guò)組件進(jìn)行交互操作,并獲得響應(yīng)。
這里需要強(qiáng)調(diào)的是,所有的UI操作都是在主線程中運(yùn)行的。
組件和布局
用戶界面元素統(tǒng)稱為組件,組件根據(jù)一定的層級(jí)結(jié)構(gòu)進(jìn)行組合形成布局。組件在未被添加到布局中時(shí),既無(wú)法顯示也無(wú)法交互,因此一個(gè)用戶界面至少包含一個(gè)布局。在UI框架中,具體的布局類通常以XXLayout命名,完整的用戶界面是一個(gè)布局,用戶界面中的一部分也可以是一個(gè)布局。布局中容納Component與ComponentContainer對(duì)象。
Component和ComponentContainer
Component:提供內(nèi)容顯示,是界面中所有組件的基類,開(kāi)發(fā)者可以給Component設(shè)置事件處理回調(diào)來(lái)創(chuàng)建一個(gè)可交互的組件。Java UI框架提供了一些常用的界面元素,也可稱之為組件,組件一般直接繼承Component或它的子類,如Text、Image等。
ComponentContainer:作為容器容納Component或ComponentContainer對(duì)象,并對(duì)它們進(jìn)行布局。Java UI框架提供了一些標(biāo)準(zhǔn)布局功能的容器,它們繼承自ComponentContainer,一般以“Layout”結(jié)尾,如DirectionalLayout、DependentLayout等。
IT培訓(xùn)鴻蒙教程1" />
LayoutConfig配置
每種布局都根據(jù)自身特點(diǎn)提供LayoutConfig和Component設(shè)定布局參數(shù)和屬性,通過(guò)指定布局屬性可以對(duì)子Component在布局中顯示效果進(jìn)行約束,例如:“width”、“height”是最基本的布局屬性,它們指定了組件的大小。
HarmonyOS提供了Ability和AbilitySlice兩個(gè)基礎(chǔ)類,一個(gè)有界面的Ability可以由一個(gè)或多個(gè)AbilitySlice構(gòu)成,AbilitySlice主要用于承載單個(gè)頁(yè)面的具體邏輯實(shí)現(xiàn)和界面UI,是應(yīng)用顯示、運(yùn)行和跳轉(zhuǎn)的最小單元。AbilitySlice通過(guò)setUIContent為界面設(shè)置布局。
AbilitySlice的UI接口
組件需要進(jìn)行組合,并添加到界面的布局中。在Java UI框架中,提供了兩種編寫(xiě)布局的方式:
在代碼中創(chuàng)建布局:用代碼創(chuàng)建Component和ComponentContainer對(duì)象,為這些對(duì)象設(shè)置合適的布局參數(shù)和屬性值,并將Component添加到ComponentContainer中,從而創(chuàng)建出完整界面。
在XML中聲明UI布局:按層級(jí)結(jié)構(gòu)來(lái)描述Component和ComponentContainer的關(guān)系,給組件節(jié)點(diǎn)設(shè)定合適的布局參數(shù)和屬性值,代碼中可直接加載生成此布局。
組件分類
根據(jù)組件的功能,可以將組件分為布局類、顯示類、交互類等三類組件:
Component基礎(chǔ)布局
Component 是所有組件的基類,也就是說(shuō)所有的組件都是基于這個(gè)類來(lái)繼承的, Component支持的xml屬性如下表:
基礎(chǔ)屬性
布局間距
以上就是這一期的鴻蒙開(kāi)發(fā)教程了,Component基礎(chǔ)布局是很重要的概念,同學(xué)們一定要弄懂。最后歡迎對(duì)鴻蒙開(kāi)發(fā)感興趣的同學(xué)來(lái)到千鋒參加我們的鴻蒙培訓(xùn)課程的學(xué)習(xí),現(xiàn)在咨詢更有免費(fèi)學(xué)習(xí)資料,趕緊來(lái)看一看吧。