国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

鴻蒙開發(fā)-UI-布局

這篇具有很好參考價值的文章主要介紹了鴻蒙開發(fā)-UI-布局。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

鴻蒙開發(fā)-序言

鴻蒙開發(fā)-工具

鴻蒙開發(fā)-初體驗

鴻蒙開發(fā)-運行機制

鴻蒙開發(fā)-運行機制-Stage模型

鴻蒙開發(fā)-UI

鴻蒙開發(fā)-UI-組件

鴻蒙開發(fā)-UI-組件-狀態(tài)管理

鴻蒙開發(fā)-UI-應(yīng)用-狀態(tài)管理

鴻蒙開發(fā)-UI-渲染控制

文章目錄

前言

一、布局概述

1.布局結(jié)構(gòu)

2.布局元素組成

3.布局分類

4.布局位置

5.布局子元素的約束

總結(jié)


前言

上文我們學(xué)習(xí)記錄鴻蒙開發(fā)中的UI渲染相關(guān)的知識點,深入學(xué)習(xí)了條件渲染、循環(huán)渲染的使用方法,以及數(shù)據(jù)懶加載。本文學(xué)習(xí)鴻蒙開發(fā)UI布局相關(guān)的知識。

一、布局概述

在聲明式UI中,所有的頁面都是由自定義組件構(gòu)成,組件按照布局的要求依次排列,最終構(gòu)成UI頁面。

布局指用特定的組件或者屬性來管理用戶頁面所放置UI組件的大小和位置。

頁面布局的合理流程:

鴻蒙開發(fā)-UI-布局,鴻蒙開發(fā),harmonyos,ui,華為

1.布局結(jié)構(gòu)

布局的結(jié)構(gòu)通常是分層級的,代表了用戶界面中的整體架構(gòu)。

一個常見的頁面結(jié)構(gòu)如下所示

鴻蒙開發(fā)-UI-布局,鴻蒙開發(fā),harmonyos,ui,華為

Page表示頁面的根節(jié)點,Column/Row等元素為系統(tǒng)組件。針對不同的頁面結(jié)構(gòu),ArkUI提供了不同的布局組件來實現(xiàn)對應(yīng)布局的效果

2.布局元素組成

布局相關(guān)的容器組件可形成對應(yīng)的布局效果

布局元素組成圖如下所示

鴻蒙開發(fā)-UI-布局,鴻蒙開發(fā),harmonyos,ui,華為

組件區(qū)域(藍區(qū)方塊):組件區(qū)域表明組件的大小,width、height屬性設(shè)置該區(qū)域的大小。

組件內(nèi)容區(qū)(黃色方塊):組件區(qū)域大小減去組件的border值,組件內(nèi)容區(qū)大小會作為組件內(nèi)容(或者子組件)進行大小測算時的布局測算限制。

組件內(nèi)容(綠色方塊):組件內(nèi)容本身占用的大小,比如文本內(nèi)容占用的大小。組件內(nèi)容和組件內(nèi)容區(qū)不一定匹配,比如設(shè)置了固定的width和height,此時組件內(nèi)容的大小就是設(shè)置的width和height減去padding和border值,但文本內(nèi)容則是通過文本布局引擎測算后得到的大小,可能出現(xiàn)文本真實大小小于設(shè)置的組件內(nèi)容區(qū)大小。當(dāng)組件內(nèi)容和組件內(nèi)容區(qū)大小不一致時,align屬性生效,定義組件內(nèi)容在組件內(nèi)容區(qū)的對齊方式,如居中對齊。

組件布局邊界(虛線部分):組件通過margin屬性設(shè)置外邊距時,組件布局邊界就是組件區(qū)域加上margin的大小。

做過UI開發(fā)的同學(xué)應(yīng)該對這幾個屬性margin border padding應(yīng)該非常好理解,考慮到開發(fā)的通用性,以及便于技術(shù)棧轉(zhuǎn)型,這里UI布局相關(guān)的屬性都是CSS布局中保持一致的,對于沒有前端開發(fā)經(jīng)驗的同學(xué),把組件占用的區(qū)域,使用盒子模型能更好理解。

3.布局分類

聲明式UI提供了以下8種常見布局

鴻蒙開發(fā)-UI-布局,鴻蒙開發(fā),harmonyos,ui,華為

4.布局位置

布局容器相對于自身或其他組件的位置,通過position、offset等屬性控制

定位能力

使用場景

實現(xiàn)方式

絕對定位

對于不同尺寸的設(shè)備,使用絕對定位的適應(yīng)性會比較差,在屏幕的適配上有缺陷。

使用position實現(xiàn)絕對定位,設(shè)置元素左上角相對于父容器左上角偏移位置。在布局容器中,設(shè)置該屬性不影響父容器布局,僅在繪制時進行位置調(diào)整。

相對定位

相對定位不脫離文檔流,即原位置依然保留,不影響元素本身的特性,僅相對于原位置進行偏移。

使用offset可以實現(xiàn)相對定位,設(shè)置元素相對于自身的偏移量。設(shè)置該屬性,不影響父容器布局,僅在繪制時進行位置調(diào)整。

絕對定位案例:

鴻蒙開發(fā)-UI-布局,鴻蒙開發(fā),harmonyos,ui,華為

注:根據(jù)組件定義的順序,使用position定位的組件會覆蓋在其前面定義的組件,但是對其后定義的組件沒有影響。

相對定位案例:

鴻蒙開發(fā)-UI-布局,鴻蒙開發(fā),harmonyos,ui,華為

5.布局子元素的約束

對子元素的約束能力

使用場景

實現(xiàn)方式

拉伸

容器組件尺寸發(fā)生變化時,增加或減小的空間全部分配給容器組件內(nèi)指定區(qū)域。

flexGrow和flexShrink屬性:

  1. flexGrow基于父容器的剩余空間分配來控制組件拉伸。
  2. flexShrink設(shè)置父容器的壓縮尺寸來控制組件壓縮。

縮放

子組件的寬高按照預(yù)設(shè)的比例,隨容器組件發(fā)生變化,且變化過程中子組件的寬高比不變。

aspectRatio屬性指定當(dāng)前組件的寬高比來控制縮放,公式為:aspectRatio=width/height。

占比

占比能力是指子組件的寬高按照預(yù)設(shè)的比例,隨父容器組件發(fā)生變化。

基于通用屬性的兩種實現(xiàn)方式:

1. 將子組件的寬高設(shè)置為父組件寬高的百分比。

2.?layoutWeight屬性,使得子元素自適應(yīng)占滿剩余空間。

隱藏

隱藏能力是指容器組件內(nèi)的子組件,按照其預(yù)設(shè)的顯示優(yōu)先級,隨容器組件尺寸變化顯示或隱藏,其中相同顯示優(yōu)先級的子組件同時顯示或隱藏。

通過displayPriority屬性來控制頁面的顯示和隱藏。


總結(jié)

本文學(xué)習(xí)了鴻蒙開發(fā)UI布局相關(guān)的知識,鴻蒙開發(fā)的UI布局技術(shù)?;九c目前前端開發(fā)主流技術(shù)棧是一致的,這樣可以易化前端開發(fā)的技術(shù)轉(zhuǎn)型。本文簡單了解了鴻蒙開發(fā)中使用頻率最高的布局分類,后面會詳細學(xué)習(xí)每種布局容器的使用。文章來源地址http://www.zghlxwxcb.cn/news/detail-792403.html

到了這里,關(guān)于鴻蒙開發(fā)-UI-布局的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 鴻蒙開發(fā)-UI-布局-柵格布局

    鴻蒙開發(fā)-UI-布局-柵格布局

    鴻蒙開發(fā)-UI-布局 鴻蒙開發(fā)-UI-布局-線性布局 鴻蒙開發(fā)-UI-布局-層疊布局 鴻蒙開發(fā)-UI-布局-彈性布局 鴻蒙開發(fā)-UI-布局-相對布局 文章目錄 前言 一、基本概念 二、格柵容器組件 1.柵格系統(tǒng)斷點 2.布局的總列數(shù) 3.排列方向 4.子組件間距 三、格柵容器子組件 1.span 2.offset 3.order 四、

    2024年02月20日
    瀏覽(21)
  • 鴻蒙開發(fā)-HarmonyOS UI架構(gòu)

    鴻蒙開發(fā)-HarmonyOS UI架構(gòu)

    當(dāng)我們新建一個工程之后,首先會進入Index頁。我們先簡單的做一個文章列表的顯示 這樣,我們只要把 articles 里面填充數(shù)據(jù),就能正常顯示一個列表了。 可以看到上面的代碼里是沒有數(shù)據(jù)的,只有一個空數(shù)組。我們想要從網(wǎng)絡(luò)獲取數(shù)據(jù)。那么,數(shù)據(jù)怎么來呢?最簡單粗暴的

    2024年02月19日
    瀏覽(20)
  • 鴻蒙開發(fā)-UI-布局

    鴻蒙開發(fā)-UI-布局

    鴻蒙開發(fā)-序言 鴻蒙開發(fā)-工具 鴻蒙開發(fā)-初體驗 鴻蒙開發(fā)-運行機制 鴻蒙開發(fā)-運行機制-Stage模型 鴻蒙開發(fā)-UI 鴻蒙開發(fā)-UI-組件 鴻蒙開發(fā)-UI-組件-狀態(tài)管理 鴻蒙開發(fā)-UI-應(yīng)用-狀態(tài)管理 鴻蒙開發(fā)-UI-渲染控制 文章目錄 前言 一、布局概述 1.布局結(jié)構(gòu) 2.布局元素組成 3.布局分類 4.布

    2024年01月16日
    瀏覽(19)
  • 【學(xué)習(xí)筆記】鴻蒙UI開發(fā)-布局(ArkTs)

    GitHub:LearnHos 碼云:LearnHos 拉伸能力 定義 當(dāng)父容器的尺寸發(fā)生變化時,增加或減少的空間 全部分配 給父容器內(nèi)的 指定子組件 場景1:自動填充 實現(xiàn):容器組件-Row + 基礎(chǔ)組件Blank 場景2:按指定的比例拉伸或收縮 拉伸 當(dāng)父容器在主軸方向上的尺寸 大于 所有子組件的尺寸之

    2024年02月05日
    瀏覽(20)
  • 鴻蒙開發(fā)筆記(十四): UI開發(fā)概述及布局概述

    鴻蒙開發(fā)筆記(十四): UI開發(fā)概述及布局概述

    方舟開發(fā)框架(簡稱ArkUI)為HarmonyOS應(yīng)用的UI開發(fā)提供了完整的基礎(chǔ)設(shè)施,包括簡潔的UI語法、豐富的UI功能(組件、布局、動畫以及交互事件),以及實時界面預(yù)覽工具等,可以支持開發(fā)者進行可視化界面開發(fā)。 針對不同的應(yīng)用場景及技術(shù)背景,方舟開發(fā)框架提供了兩種開發(fā)

    2024年01月19日
    瀏覽(24)
  • HarmonyOS鴻蒙基于Java開發(fā): Java UI 動畫開發(fā)指導(dǎo)

    目錄 幀動畫 數(shù)值動畫 屬性動畫 動畫集合 多個動畫同時開始 多個動畫按順序逐個執(zhí)行 多個動畫順序執(zhí)行和同時執(zhí)行并存 動畫是組件的基礎(chǔ)特性之一,精心設(shè)計的動畫使UI變化更直觀,有助于改進應(yīng)用程序的外觀并改善用戶體驗。

    2024年02月21日
    瀏覽(36)
  • HarmonyOS鴻蒙基于Java開發(fā): Java UI 多模輸入開發(fā)

    目錄 約束與限制 場景介紹 接口說明 開發(fā)步驟 HarmonyOS旨在為開發(fā)者提供NUI(Natural User Interface)的交互方式。有別于傳統(tǒng)操作系統(tǒng)的輸入劃分方式,在HarmonyOS上,我們將多種維度的輸入整合在一起,開發(fā)者可以借助應(yīng)用程序框架、系統(tǒng)自帶的UI組件或API接口輕松地實現(xiàn)具有多

    2024年01月20日
    瀏覽(19)
  • 鴻蒙開發(fā)(九)UI實戰(zhàn) - 線性布局實現(xiàn)登錄界面

    鴻蒙開發(fā)(九)UI實戰(zhàn) - 線性布局實現(xiàn)登錄界面

    ? ? 前面我們花了很多章去講述鴻蒙開發(fā)的UI,包括布局和控件等。本篇,我們綜合使用布局和控件,完成一個簡單的用戶登錄界面。 ? ? 簡單回憶下我們掌握的幾種布局,線性布局的控件橫向或縱向線性排列,非常適合實現(xiàn)登錄界面,因此我們使用線性布局來實現(xiàn)登錄界面

    2024年04月27日
    瀏覽(29)
  • HarmonyOS應(yīng)用開發(fā)學(xué)習(xí)筆記 UI布局學(xué)習(xí) 相對布局 (RelativeContainer)

    HarmonyOS應(yīng)用開發(fā)學(xué)習(xí)筆記 UI布局學(xué)習(xí) 相對布局 (RelativeContainer)

    官方文檔 其實很好理解 :alignRules{}里面表示: 元素四個方向(left,top,bottom,right), 相對于誰(anchor:‘id’) 的什么位置(HorizontalAlign.Start ,VerticalAlign.Bottom ,VerticalAlign.Bottom, HorizontalAlign.End ) RelativeContainer為采用相對布局的容器,支持容器內(nèi)部的子元素設(shè)置相對位

    2024年02月02日
    瀏覽(26)
  • HarmonyOS應(yīng)用開發(fā)學(xué)習(xí)筆記 UI布局學(xué)習(xí) 柵格布局(GridRow/GridCol)

    HarmonyOS應(yīng)用開發(fā)學(xué)習(xí)筆記 UI布局學(xué)習(xí) 柵格布局(GridRow/GridCol)

    HarmonyOS應(yīng)用開發(fā)學(xué)習(xí)筆記 UI布局學(xué)習(xí) 相對布局 (RelativeContainer) 官方文檔:柵格布局(GridRow/GridCol) 通過設(shè)置GridRow的direction屬性來指定柵格子組件在柵格容器中的排列方向 代碼 描述 GridRowDirection.Row 從左往右排列 GridRowDirection.RowReverse 從右往左排列 左往右排列 子組件從右

    2024年02月03日
    瀏覽(24)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包