鴻蒙布局Column/Row/Stack

鴻蒙布局Column/Row/Stack

  • 簡介
  • 我們以Column為例進行講解
      • 1. Column({space: 10}) 這里的space: 10,表示Column里面每個元素之間的間距為10
      • 2. width('100%'),height('100%') 表示寬高占比
      • 3. backgroundColor(0xffeeeeee) 設置背景顏色
      • 4. padding({top: 50}) 設置頂部內邊距
      • 5. border({width: 1,color: Color.Red,style: BorderStyle.Dotted,radius: 10}) 設置容器的邊框
      • 6. justifyContent(FlexAlign.Center)表述元素在主軸排列方式
      • 7. .alignItems(HorizontalAlign.Start)表述元素在副軸排列方式
  • Stack---堆疊布局方式
    • alignContent(Alignment.Center)排列方式介紹
    • zIndex的使用

簡介

鴻蒙開發中,最常用的兩種線性布局

Column:垂直布局方式
Row:水平布局方式

在這里插入圖片描述
在這里插入圖片描述

我們以Column為例進行講解

請看一下下面代碼

@Entry
@Component
struct ColumnTest {build() {Column({space: 10}){Text('Column垂直布局')Column({space:20}){Button('測試').width('50%').backgroundColor(Color.Green)Button('測試1').width('50%').backgroundColor(Color.Red)Button('測試2').width('50%').backgroundColor(Color.Blue)}.width('80%').height('50%').backgroundColor(Color.White).justifyContent(FlexAlign.Center)// .alignItems(HorizontalAlign.Start).border({width: 1,color: Color.Red,style: BorderStyle.Dotted,radius: 10})}.width('100%').height('100%').backgroundColor(0xffeeeeee).padding({top: 50})}
}

1. Column({space: 10}) 這里的space: 10,表示Column里面每個元素之間的間距為10

2. width(‘100%’),height(‘100%’) 表示寬高占比

3. backgroundColor(0xffeeeeee) 設置背景顏色

4. padding({top: 50}) 設置頂部內邊距

```
padding(50) 表示上下左右,內邊距全部都是50
padding({top: 50,left: 30}) 表示頂部內邊距50,左邊內邊距30
```
如果使用margin外邊距,道理類似

5. border({width: 1,color: Color.Red,style: BorderStyle.Dotted,radius: 10}) 設置容器的邊框

```
width: 1 邊框寬1
color: Color.Red 邊框顏色
style: BorderStyle.Dotted 邊框線條方式Dotted 點Dashed 線段Solid 實線
radius: 10 設置容器圓角
```

6. justifyContent(FlexAlign.Center)表述元素在主軸排列方式

對于Column來說主軸就是Y(豎軸)

對于Row來說主軸就是X(橫軸)

FlexAlign有以下幾種排列方式:

FlexAlign.Start 頭部對齊
FlexAlign.Center 中間對齊
FlexAlign.End 底部對齊
FlexAlign.SpaceAround 元素與元素之間,元素與頂部或底部之間距離一樣
FlexAlign.SpaceBetween 元素與元素之間距離一樣,元素與頂部或底部之間距離為0
FlexAlign.SpaceEvenly 元素與元素之間距離一樣,元素與頂部或底部之間距離為元素相鄰間距的一般

FlexAlign.Start 展示方式
在這里插入圖片描述

FlexAlign.End 展示方式
在這里插入圖片描述

FlexAlign.Center 展示方式
在這里插入圖片描述

FlexAlign.SpaceAround 展示方式
在這里插入圖片描述

FlexAlign.SpaceBetween 展示方式
在這里插入圖片描述

FlexAlign.SpaceEvenly 展示方式
在這里插入圖片描述

7. .alignItems(HorizontalAlign.Start)表述元素在副軸排列方式

對于Column來說副軸就是X(橫軸)

對于Row來說副軸就是Y(豎軸)

HorizontalAlign有以下幾種排列方式:

HorizontalAlign.Start
HorizontalAlign.Center
HorizontalAlign.End

HorizontalAlign.Start 展示方式
在這里插入圖片描述

HorizontalAlign.Center 展示方式
在這里插入圖片描述

HorizontalAlign.End 展示方式
在這里插入圖片描述

Stack—堆疊布局方式

這是一種在屏幕Z軸方向上的一種布局方式,類似于將所有的元素堆疊在一起,最后加入的在最上層,除非有明確指明放在那一層。

Stack(){Column().width(300).height(300).backgroundColor(Color.Black)Column().width(250).height(250).backgroundColor(Color.Orange)Column().width(200).height(200).backgroundColor(Color.Red)}.width('100%').height('50%').backgroundColor(Color.White).alignContent(Alignment.Center)

在這里插入圖片描述

上面我們定義了3個Column,以Stack的方式堆疊在一起。

這里面的寬高/背景色,就不再介紹。

alignContent(Alignment.Center)排列方式介紹

Alignment有以下幾種形式

Alignment.TopStart  左上角
Alignment.Top 頂部中間
Alignment.TopEnd 右上角
Alignment.Start 中間左邊
Alignment.Center 中間
Alignment.End 中間右邊
Alignment.BottomTop 左下角
Alignment.Bottom 底部中間
Alignment.BottomEnd 右下角

在這里插入圖片描述

zIndex的使用

除了按照順序添加元素外,還可以使用zIndex手動調整添加元素在stack中的第幾層。

Column().width(100).height(100).backgroundColor(Color.Red).zIndex(4)

zIndex的值越來,層級就越高,也就是在最上層,也最容易被看到。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/12276.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/12276.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/12276.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【ARM 嵌入式 C 文件操作系列 20.4 -- 打印 uint64_t 類型的數值】

文章目錄 C代碼中 打印 uint64_t 類型的數值測試效果 C代碼中 打印 uint64_t 類型的數值 為了以16進制方式打印uint64_t類型的數值&#xff0c;可以使用printf函數&#xff0c;配合<inttypes.h>頭文件中定義的宏PRIX64或PRIx64。這些宏確保了無論在哪個平臺上&#xff0…

keepalived雙機熱備超詳細入門介紹

keepalived 一、keepalived入門介紹 1.keepalived簡介 2.keepalived服務的三個重要功能 2.1.管理LVS負載均衡軟件 2.2.實現對LVS集群節點健康檢查功能 2.3.作為系統網絡服務的高可用功能 3.keepalived高可用故障切換轉移原理 4.keepalived安裝及主配置文件介紹 …

如何用Rust獲取本機CPU、內存在Web網頁中顯示?

目錄 一、需求描述 二、具體操作步驟 三、知識點 1、systemstat 2、Actix 一、需求描述 需求&#xff1a; 1、需要使用Rust進行后端開發獲取本機CPU和內存信息&#xff1b; 2、使用WEB框架發布API&#xff1b; 3、然后使用HTML/CSS/JavaScript進行前端開發&#xff0…

MySQL表的增刪查改【基礎部分】

數據表的操作 新增 普通插入 insert into 表名 values(值,值...)注意&#xff1a; 此處的值要和表中的列相匹配 使用’‘單引號或者”“雙引號來表示字符串 mysql> insert into student values(123,zhangsan); Query OK, 1 row affected (0.02 sec)指定列插入 insert …

2024年3月 電子學會 青少年等級考試機器人理論真題五級

202403 青少年等級考試機器人理論真題五級 第 1 題 下圖程序運行后&#xff0c;串口監視器顯示的結果是&#xff1f;&#xff08; &#xff09; A&#xff1a;0 B&#xff1a;1 C&#xff1a;3 D&#xff1a;4 第 2 題 下列選項中&#xff0c;關于74HC595移位寄存器芯片的…

微信小程序開發【Coffee Shopping】(1)

1.環境準備 微信開發者工具&#xff1a;https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html 前端常用網站集合&#xff1a;http://www.wwp666.cn/ 微信小程序開發文檔&#xff1a;https://developers.weixin.qq.com/miniprogram/dev/framework/quicksta…

數據結構之二叉樹詳解[1]

在前面我們介紹了堆和二叉樹的基本概念后&#xff0c;本篇文章將帶領大家深入學習鏈式二叉樹。 1.預備知識 2.二叉樹結點的創建 3.二叉樹的遍歷 3.1前序遍歷 3.2中序遍歷 3.3 后序遍歷 4.統計二叉樹的結點個數 5.二叉樹葉子結點的個數 6.二叉樹第k層的結點個數 7.總結 …

鴻蒙ArkUI開發:常用布局【相對布局】

相對布局&#xff08;RelativeContainer&#xff09; 相對布局可以讓子元素指定兄弟元素或父容器作為錨點&#xff0c;基于錨點做位置布局必須為RelativeContainer及其子元素設置ID&#xff0c;用于指定錨點信息。未設置ID的子元素不會顯示RelativeContainer ID為“__containe…

增程SUV價格即將崩盤?買車一定要再等等!

文 | AUTO芯球 作者 | 雷歌? 真是“離譜”啊&#xff0c;車圈真是逗比歡樂多&#xff0c; 我這兩天看一個博主連續40多小時開車直播&#xff0c;充電口、油箱蓋全部封死&#xff0c;全程視頻直播沒斷過&#xff0c; 就為了測試這兩天剛上市的星際元ET續航有多遠。 另一個…

Docker 創建網絡

問題&#xff1a; 1.需要將多個容器添加到同一個網絡. 2.docker-compose.yaml 如果不指定&#xff0c;默認會重新創建一個網卡. 創建網卡 docker network create -d bridge mynet ##-d 指定模式&#xff08;默認橋接&#xff09;查看自定義網絡信息 docker inspect mynet…

NSSCTF Web方向的例題和相關知識點(二)

[SWPUCTF 2021 新生賽]Do_you_know_http 解題&#xff1a; 點擊打開環境&#xff0c;是 提示說請使用wLLm瀏覽器訪問 我們可以更改瀏覽器信息&#xff0c;在burp重放器中發包后發現是302重定向&#xff0c;但是提示說success成功&#xff0c;說明 我們修改是成功的&#xff…

HTML特殊字符

特殊字符 有特殊含義的字符成為字符實體 對于有特殊含義的字符,需要通過轉移字符來表示 <span> <br><a href"http://www.atguigu.com">我 愛 前端</a> <br>&amp;amp; 效果

Element-UI 快速入門指南

文章目錄 一、安裝 Element-UI1.1 使用 npm 安裝1.2 使用 yarn 安裝 二、引入 Element-UI三、使用 Element-UI 組件3.1 按鈕組件3.2 輸入框組件3.3 表單組件3.4 表格組件3.5 彈框組件 四、自定義主題4.1 安裝主題工具4.2 初始化變量文件4.3 編譯主題 五、總結 &#x1f389;歡迎…

刷題之最長連續序列

哈希表 class Solution { public:int longestConsecutive(vector<int>& nums) {//set記錄并且去重nums中的數unordered_set<int>set;for(int i0;i<nums.size();i){set.insert(nums[i]);}int result0;//遍歷所有數for(auto iset.begin();i!set.end();i){//如…

服務的war包已經丟在tomcat中但是還是沒法訪問,如何排查?

問題出現的現象是我已經將 XWiki 的 WAR 包放置在 Tomcat 的 webapps目錄下但仍然無法訪問&#xff0c;反思之后可以從下面以下幾個方面來診斷和解決問題&#xff1a; 1. 確認 Tomcat 正在運行 首先&#xff0c;確保 Tomcat 服務正在正常運行。可以使用以下命令檢查 Tomcat 的…

鑒源論壇·觀通丨軌交軟件測試技術詳述

作者 | 劉艷青 上海控安安全測評部測試經理 版塊 | 鑒源論壇 觀通 社群 | 添加微信號“TICPShanghai”加入“上海控安51fusa安全社區” 01 集成測試技術要求 1.1 總體要求 對軟件集成測試進行靜態測試應先于動態測試&#xff1b; 集成過程是動態進行的&#xff0c;在測…

圖紙加密軟件是如何實現共享服務器圖紙防泄密?Cad圖紙防泄密廣州廠家

現在企業網絡數據安全的問題已經在社會的發展過程中引起了關注&#xff0c;尤其對研發制造類企業而言&#xff0c;企業設計圖紙的防泄密問題是這些企業在日后工作管理中的重中之重。在當今的互聯網發展形勢下&#xff0c;廣州的制造類設計企業為不讓單位圖紙泄露&#xff0c;也…

CVHub | CVPR 2024 | 英偉達發布新一代視覺基礎模型: AM-RADIO = CLIP + DINOv2 + SAM

本文來源公眾號“CVHub”&#xff0c;僅用于學術分享&#xff0c;侵權刪&#xff0c;干貨滿滿。 原文鏈接&#xff1a;CVPR 2024 | 英偉達發布新一代視覺基礎模型: AM-RADIO CLIP DINOv2 SAM 標題&#xff1a;《AM-RADIO: Agglomerative Vision Foundation Model Reduce Al…

vscode 之 output 輸出中文亂碼,終端輸出中文正常

# 1. 背景 因為沒錢買正版的軟件&#xff0c;所以轉戰 vscode 編譯器。 在編譯 python 文件時&#xff0c;發現直接右鍵 runner code&#xff0c;輸出中文亂碼。 但是在 teiminal 終端 執行py test.py 時&#xff0c;輸出正常&#xff0c;中文正常。 output 輸出中文樣式(中文…

java相等忽略音調

來自百度,親測可用 java相等忽略音調 在Java中&#xff0c;如果你想比較兩個字符串而忽略它們的音調符號&#xff0c;你可以使用java.text.Collator類來進行區域敏感的字符串比較。Collator類提供了根據特定區域的規則進行字符串比較的能力&#xff0c;可以設置忽略音調的選項…