DirectionalLayout線性佈局

千鋒武漢發表於2021-08-06

      今天我們介紹一下DirectionalLayout線性佈局,帶好小本本我們開始今天的課程了。

      DirectionalLayout佈局

      DirectionalLayout是Java UI中的重要佈局,主要是用於將一組元件(Component)按照水平或者垂直方向排布,能夠很方便的對其佈局內的所有元件,同時也可以和其他佈局進行組合,實現更加豐富的佈局方式。

      DirectionalLayout的所有共有屬性是繼承自:Component基礎元件

      DirectionalLayout示意圖

千鋒IT培訓鴻蒙教程1

      DirectionalLayout自有的佈局屬性如下:

      alignment屬性:表示在自有的XML屬性,其中包括對齊方式,有左對齊、右對齊、水平居中對齊、垂直居中對齊等方式horizontal_center、垂直居中對齊vertical_center等方式。可以設定取值項如表中所列,也可以使用“|”進行多項組合。ohos:alignment="top|left" 或者ohos:alignment="left" 

      orientation屬性:是表示子佈局的排列方向,其中有兩個重要的屬性,一個是水平方向 horizontal,一個是垂直方向vertical。示例如下:水平方向:ohos:orientation="horizontal"   垂直方向:ohos:orientation="vertical" 

      total_weight權重:所有子檢視的權重之和,可以直接設定浮點數值,也可以引用float浮點數資源。ohos:total_weight="2.5"ohos:total_weight="$float:total_weight"

      layout_alignment對齊方式:表示DirectionalLayout所包含的可支援的XML屬性。其中對其方式有左對齊、頂部對齊、水平居中對齊、垂直居中對齊等。可以設定取值項如表中所列,也可以使用“|”進行多項組合。ohos:layout_alignment="top"  ohos:layout_alignment="top|left" 

      weight權重:權重(weight)就是按比例來分配元件佔用父元件的大小,在水平佈局下計算公式為:

      父佈局可分配寬度=父佈局寬度-所有子元件width之和;

      元件寬度=元件weight/所有元件weight之和*父佈局可分配寬度;

      實際使用過程中,建議使用width=0來按比例分配父佈局的寬度,1:1:1效果如下:

千鋒IT培訓鴻蒙教程2

      案例一:排列方向

      DirectionalLayout的排列方向(orientation)分為水平(horizontal)或者垂直(vertical)方向。使用orientation設定佈局內元件的排列方式,預設為垂直排列。

千鋒IT培訓鴻蒙教程3

      案例二:權重

      權重(weight)就是按比例來分配元件佔用父元件的大小

千鋒IT培訓鴻蒙教程4

      以上就是這一期的鴻蒙系統DirectionalLayout線性佈局的介紹了,同學們趕緊去試試吧!

       本文來自千鋒教育,轉載請註明出處。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31548651/viewspace-2785613/,如需轉載,請註明出處,否則將追究法律責任。

相關文章