99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

鴻蒙ArkUI之【如何選擇布局?】

jf_46214456 ? 來源:jf_46214456 ? 作者:jf_46214456 ? 2024-05-13 15:37 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

如何選擇布局

聲明式UI提供了以下9種常見布局,開發(fā)者可根據(jù)實際應用場景選擇合適的布局進行頁面開發(fā)。

請熟悉鴻蒙開發(fā)指導文檔:[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md](。

布局應用場景
[線性布局](Row、Column)如果布局內(nèi)子元素超過1個,且能夠以某種方式線性排列時優(yōu)先考慮此布局。
[層疊布局](Stack)組件需要有堆疊效果時優(yōu)先考慮此布局,層疊布局的堆疊效果不會占用或影響其他同容器內(nèi)子組件的布局空間。例如[Panel]作為子組件彈出時將其他組件覆蓋更為合理,則優(yōu)先考慮在外層使用堆疊布局。
[彈性布局](Flex)彈性布局是與線性布局類似的布局方式。區(qū)別在于彈性布局默認能夠使子組件壓縮或拉伸。在子組件需要計算拉伸或壓縮比例時優(yōu)先使用此布局,可使得多個容器內(nèi)子組件能有更好的視覺上的填充容器效果。
[相對布局](RelativeContainer)相對布局是在二維空間中的布局方式,不需要遵循線性布局的規(guī)則,布局方式更為自由。通過在子組件上設置錨點規(guī)則(AlignRules)使子組件能夠將自己在橫軸、縱軸中的位置與容器或容器內(nèi)其他子組件的位置對齊。設置的錨點規(guī)則可以天然支持子元素壓縮、拉伸,堆疊或形成多行效果。在頁面元素分布復雜或通過線性布局會使容器嵌套層數(shù)過深時推薦使用。
[柵格布局](GridRow、GridCol)柵格是多設備場景下通用的輔助定位工具,通過將空間分割為有規(guī)律的柵格。柵格不同于網(wǎng)格布局固定的空間劃分,它可以實現(xiàn)不同設備下不同的布局,空間劃分更隨心所欲,從而顯著降低適配不同屏幕尺寸的設計及開發(fā)成本,使得整體設計和開發(fā)流程更有秩序和節(jié)奏感,同時也保證多設備上應用顯示的協(xié)調(diào)性和一致性,提升用戶體驗。推薦手機、大屏、平板等不同設備,內(nèi)容相同但布局不同時使用。
[媒體查詢](@ohos.mediaquery)媒體查詢可根據(jù)不同設備類型或同設備不同狀態(tài)修改應用的樣式。例如根據(jù)設備和應用的不同屬性信息設計不同的布局,以及屏幕發(fā)生動態(tài)改變時更新應用的頁面布局。
[列表](List)使用列表可以輕松高效地顯示結構化、可滾動的信息。在ArkUI中,列表具有垂直和水平布局能力和自適應交叉軸方向上排列個數(shù)的布局能力,超出屏幕時可以滾動。列表適合用于呈現(xiàn)同類數(shù)據(jù)類型或數(shù)據(jù)類型集,例如圖片和文本。
[網(wǎng)格](Grid)網(wǎng)格布局具有較強的頁面均分能力,子組件占比控制能力,是一種重要自適應布局。網(wǎng)格布局可以控制元素所占的網(wǎng)格數(shù)量、設置子組件橫跨幾行或者幾列,當網(wǎng)格容器尺寸發(fā)生變化時,所有子組件以及間距等比例調(diào)整。推薦在需要按照固定比例或者均勻分配空間的布局場景下使用,例如計算器、相冊、日歷等。
[輪播](Swiper)輪播組件通常用于實現(xiàn)廣告輪播、圖片預覽、可滾動應用等。

布局位置

position、offset等屬性影響了布局容器相對于自身或其他組件的位置。

定位能力使用場景實現(xiàn)方式
絕對定位對于不同尺寸的設備,使用絕對定位的適應性會比較差,在屏幕的適配上有缺陷。使用[position]實現(xiàn)絕對定位,設置元素左上角相對于父容器左上角偏移位置。在布局容器中,設置該屬性不影響父容器布局,僅在繪制時進行位置調(diào)整。
相對定位相對定位不脫離文檔流,即原位置依然保留,不影響元素本身的特性,僅相對于原位置進行偏移。使用[offset]可以實現(xiàn)相對定位,設置元素相對于自身的偏移量。設置該屬性,不影響父容器布局,僅在繪制時進行位置調(diào)整。

搜狗高速瀏覽器截圖20240326151344.png

對子元素的約束

image.png

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 組件
    +關注

    關注

    1

    文章

    532

    瀏覽量

    18424
  • 鴻蒙
    +關注

    關注

    60

    文章

    2620

    瀏覽量

    44063
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    鴻蒙開發(fā)學習:初探【ArkUI-X】

    **簡單來說,ArkTS + ArkUI-X 對標的框架為 flutter,一次代碼,編譯為 native 全平臺運行**
    的頭像 發(fā)表于 05-13 15:58 ?1669次閱讀
    <b class='flag-5'>鴻蒙</b>開發(fā)學習:初探【<b class='flag-5'>ArkUI</b>-X】

    鴻蒙ArkUI開發(fā):常用布局【主軸】

    線性布局的子元素在線性方向上(水平方向和垂直方向)依次排列
    的頭像 發(fā)表于 05-13 17:33 ?1169次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkUI</b>開發(fā):常用<b class='flag-5'>布局</b>【主軸】

    鴻蒙ArkUI-X跨語言調(diào)用說明:【平臺橋接開發(fā)指南(Android)】

    平臺橋接用于客戶端(ArkUI)和平臺(Android或iOS)之間傳遞消息,即用于ArkUI與平臺雙向數(shù)據(jù)傳遞、ArkUI側調(diào)用平臺的方法、平臺調(diào)用ArkUI側的方法。本文主要介紹A
    的頭像 發(fā)表于 05-25 16:26 ?1255次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkUI</b>-X跨語言調(diào)用說明:【平臺橋接開發(fā)指南(Android)】

    鴻蒙Next實現(xiàn)瀑布流布局

    鴻蒙開發(fā)環(huán)境。打開 DevEco Studio,新建一個鴻蒙應用項目,選擇合適的模板(如 Empty Feature Ability),設置項目名稱、包名等信息,完成項目創(chuàng)建。 ## 二、
    發(fā)表于 06-10 14:17

    4天帶你上手HarmonyOS ArkUI開發(fā)——《HarmonyOS ArkUI入門訓練營健康生活實戰(zhàn)》

    《HarmonyOS ArkUI入門訓練營健康飲食應用》是面向入門開發(fā)者打造的實戰(zhàn)課程系列。特邀華為終端BG高級開發(fā)工程師作為本次訓練營講師,以健康飲食為例,開展技術教學及實戰(zhàn)案例分享,助力入門
    發(fā)表于 01-05 11:49

    OpenHarmony使用ArkUI Inspector分析布局

    多余的嵌套層次,縮短組件刷新耗時。本文會介紹如何使用ArkUI Inspector工具分析布局,提示應用響應性能。 ● 關鍵字:列舉本文相關的關鍵字:OpenHarmony HarmonyOS 鴻蒙
    發(fā)表于 09-04 15:27

    鴻蒙應用ui布局

    請問,在用java開發(fā)鴻蒙應用布局UI時,怎么才能全屏布局(不顯示labelb標題)
    發(fā)表于 09-20 22:09

    鴻蒙ArkUI開發(fā)-Tabs組件的使用

    鴻蒙ArkUI開發(fā)-Tabs組件的使用
    的頭像 發(fā)表于 01-19 16:01 ?2746次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkUI</b>開發(fā)-Tabs組件的使用

    鴻蒙ArkUI開發(fā)-應用添加彈窗

    彈窗是一種模態(tài)窗口,通常用來展示用戶當前需要的或用戶必須關注的信息或操作。在彈出框消失之前,用戶無法操作其他界面內(nèi)容。ArkUI為我們提供了豐富的彈窗功能
    的頭像 發(fā)表于 01-24 17:22 ?1146次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkUI</b>開發(fā)-應用添加彈窗

    鴻蒙ArkUI開發(fā)實戰(zhàn):eTS版【笑話app】

    制作一款笑話app,使用ArkUI
    的頭像 發(fā)表于 03-25 16:04 ?760次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkUI</b>開發(fā)實戰(zhàn):eTS版【笑話app】

    鴻蒙ArkUI:【從代碼到UI顯示的整體渲染流程】

    方舟開發(fā)框架(簡稱ArkUI)是鴻蒙開發(fā)的UI框架,提供如下兩種開發(fā)范式,我們 **只學聲明式開發(fā)范式**
    的頭像 發(fā)表于 05-13 16:06 ?1636次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkUI</b>:【從代碼到UI顯示的整體渲染流程】

    鴻蒙跨平臺框架:【ArkUi-X】創(chuàng)建工程

    鴻蒙推出了鴻ArkUi-X 框架所以就寫個文章分享一下
    的頭像 發(fā)表于 05-13 17:48 ?1554次閱讀
    <b class='flag-5'>鴻蒙</b>跨平臺框架:【<b class='flag-5'>ArkUi</b>-X】創(chuàng)建工程

    鴻蒙ArkUI開發(fā):常用布局【相對布局

    相對布局可以讓子元素指定兄弟元素或父容器作為錨點,基于錨點做位置布局
    的頭像 發(fā)表于 05-14 20:50 ?967次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkUI</b>開發(fā):常用<b class='flag-5'>布局</b>【相對<b class='flag-5'>布局</b>】

    鴻蒙ArkUI-X跨平臺開發(fā):【 編寫第一個ArkUI-X應用】

    通過構建一個簡單的ArkUI頁面跳轉示例,快速了解資源創(chuàng)建引用,路由代碼編寫和UI布局編寫等應用開發(fā)流程。
    的頭像 發(fā)表于 05-21 17:36 ?1277次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkUI</b>-X跨平臺開發(fā):【 編寫第一個<b class='flag-5'>ArkUI</b>-X應用】

    鴻蒙ArkUI-X跨語言調(diào)用說明:【平臺橋接(@arkui-x.bridge)】

    平臺橋接用于客戶端(ArkUI)和平臺(Android或iOS)之間傳遞消息,即用于ArkUI與平臺雙向數(shù)據(jù)傳遞、ArkUI側調(diào)用平臺的方法、平臺調(diào)用ArkUI側的方法。
    的頭像 發(fā)表于 05-21 15:09 ?1306次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkUI</b>-X跨語言調(diào)用說明:【平臺橋接(@<b class='flag-5'>arkui</b>-x.bridge)】