吴忠躺衫网络科技有限公司

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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

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

OpenHarmony實(shí)例應(yīng)用:【常用組件和容器低代碼】

jf_46214456 ? 來源:jf_46214456 ? 作者:jf_46214456 ? 2024-04-14 09:27 ? 次閱讀

介紹

本篇Codelab是基于ArkTS語言的低代碼開發(fā)方式實(shí)現(xiàn)的一個(gè)簡(jiǎn)單實(shí)例。具體實(shí)現(xiàn)功能如下:

  1. 創(chuàng)建一個(gè)低代碼工程。
  2. 通過拖拽的方式實(shí)現(xiàn)任務(wù)列表和任務(wù)信息界面的界面布局。
  3. 在UI編輯界面實(shí)現(xiàn)數(shù)據(jù)動(dòng)態(tài)渲染和事件的綁定。

最終實(shí)現(xiàn)效果如下:

相關(guān)概念

低代碼開發(fā)方式具有豐富的UI界面編輯功能,通過可視化界面開發(fā)方式快速構(gòu)建布局,可有效降低開發(fā)者的上手成本并提升開發(fā)者構(gòu)建UI界面的效率。

  • [List]:List 是很常用的滾動(dòng)類容器組件之一,它按照水平或者豎直方向線性排列子組件, List 的子組件必須是 ListItem ,它的寬度默認(rèn)充滿 List 的寬度。
  • [循環(huán)渲染]:開發(fā)框架提供循環(huán)渲染(ForEach組件)來迭代數(shù)組,并為每個(gè)數(shù)組項(xiàng)創(chuàng)建相應(yīng)的組件。
  • [警告彈窗]:顯示警告彈窗組件,可設(shè)置文本內(nèi)容與響應(yīng)回調(diào)。

環(huán)境搭建

軟件要求

  • [DevEco Studio]版本:DevEco Studio 3.1 Release。
  • OpenHarmony SDK版本:API version 9。

硬件要求

  • 開發(fā)板類型:[潤(rùn)和RK3568開發(fā)板]。
  • OpenHarmony系統(tǒng):3.2 Release。

環(huán)境搭建

完成本篇Codelab我們首先要完成開發(fā)環(huán)境的搭建,本示例以RK3568開發(fā)板為例,參照以下步驟進(jìn)行:

  1. [獲取OpenHarmony系統(tǒng)版本]:標(biāo)準(zhǔn)系統(tǒng)解決方案(二進(jìn)制)。以3.2 Release版本為例:
  2. 搭建燒錄環(huán)境。
    1. [完成DevEco Device Tool的安裝]
    2. [完成RK3568開發(fā)板的燒錄]
  3. 搭建開發(fā)環(huán)境。
    1. 開始前請(qǐng)參考[工具準(zhǔn)備],完成DevEco Studio的安裝和開發(fā)環(huán)境配置。
    2. 開發(fā)環(huán)境配置完成后,請(qǐng)參考[使用工程向?qū)創(chuàng)建工程(模板選擇“Empty Ability”)。
    3. 工程創(chuàng)建完成后,選擇使用[真機(jī)進(jìn)行調(diào)測(cè)]。
    4. 鴻蒙Harmony&OpenHarmony開發(fā)指導(dǎo):gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md點(diǎn)擊或者復(fù)制轉(zhuǎn)到。

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

代碼結(jié)構(gòu)解讀

鴻蒙next文檔學(xué)習(xí)
+mau123789v直接拿取
└──entry/src/main/ets           // 代碼區(qū)
│  ├──common                    
│  │  ├──images                 // 圖片
│  │  └──Const.ets              // 常量類
│  ├──entryability              
│  │  └──EntryAbility.ets       // 程序入口類
│  └──pages
│     ├──TaskDetailPage.ets     // 詳情頁的邏輯描述文件
│     └──TaskPage.ets           // 首頁的邏輯描述文件
├──entry/src/main/resources     // 資源文件
└──entry/src/main/supervisual
   └──pages
      ├──TaskDetailPage.visual  // 詳情頁面的數(shù)據(jù)模型
      └──TaskPage.visual        // 首頁頁面的數(shù)據(jù)模型

創(chuàng)建低代碼工程

首先需要先創(chuàng)建一個(gè)低代碼的工程,創(chuàng)建工程時(shí),在配置工程界面打開“Enable Super Visual”開關(guān),點(diǎn)擊“Finish”。工程創(chuàng)建完成后,在src/main目錄下會(huì)生成一個(gè)supervisual目錄,supervisual/pages目錄下的.visual文件,可以通過組件拖拽實(shí)現(xiàn)的頁面數(shù)據(jù)模型文件。ets/pages下的.ets文件是跟supervisual/pages中的文件一一對(duì)應(yīng)的,是對(duì)應(yīng)界面的邏輯描述文件。

低代碼設(shè)計(jì)界面布局

打開TaskPage.visual文件,界面如圖所示:

中間部分是界面布局后的整體效果。

左側(cè)上部的“UI Control”模塊是我們可以進(jìn)行拖拽的組件。

左側(cè)下部的“Component Tree”模塊是我們界面上所有的元素樹。

右側(cè)的“Attributes&Styles”模塊是當(dāng)前選中的界面元素的屬性和樣式的詳細(xì)信息,通過修改這個(gè)模塊的內(nèi)容來改變界面上元素的樣式屬性等信息。

任務(wù)列表頁面分了上下兩部分,上邊拖進(jìn)來了一個(gè)Row組件來展示界面標(biāo)題,下邊用一個(gè)List組件來實(shí)現(xiàn)任務(wù)列表的數(shù)據(jù)展示,每個(gè)Item子組件用的橫向布局,里邊拖進(jìn)去了一個(gè)Image組件和兩個(gè)Text組件。

實(shí)現(xiàn)數(shù)據(jù)動(dòng)態(tài)渲染

頁面布局完成后,需要給ListItem 組件綁定一個(gè)ForEach的數(shù)據(jù)源。如圖:

// TaskPage.ets
@State taskList: Array< TaskInfo > = TASK_LIST;

taskClickAction() {
  router.push({
    url: 'pages/TaskDetailPage'
  });
}

同時(shí)給ListItem綁定一個(gè)點(diǎn)擊事件來實(shí)現(xiàn)界面的跳轉(zhuǎn)功能。

手動(dòng)創(chuàng)建低代碼頁面

在pages下新建一個(gè)visual文件(右鍵->New->Visual),IDE會(huì)在ets/pages和supervisual/pages下同時(shí)創(chuàng)建一個(gè)名字相同后綴分別是.ets和.visual的文件,同樣通過組件拖拽的方式去實(shí)現(xiàn)任務(wù)信息界面的布局,給界面綁定數(shù)據(jù)源和點(diǎn)擊事件。detail.ets文件中代碼如下:

@State detailList: Array< DetailModel > = DETAILS;

showDialog() {
  AlertDialog.show({
    title: $r('app.string.task_clock'),
    message: $r('app.string.task_done'),
    autoCancel: true,
    confirm: {
      value: $r('app.string.clock'),
      action: () = > {
      }
    }
  });
}

backAction() {
  router.back();
}

審核編輯 黃宇

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

    關(guān)注

    30

    文章

    4825

    瀏覽量

    69043
  • 鴻蒙
    +關(guān)注

    關(guān)注

    57

    文章

    2392

    瀏覽量

    43050
  • OpenHarmony
    +關(guān)注

    關(guān)注

    25

    文章

    3744

    瀏覽量

    16577
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    鴻蒙開發(fā)OpenHarmony組件復(fù)用案例

    和響應(yīng)速度。 在OpenHarmony應(yīng)用開發(fā)時(shí),自定義組件被@Reusable裝飾器修飾時(shí)表示該自定義組件可以復(fù)用。在父自定義組件下創(chuàng)建的可復(fù)用
    發(fā)表于 01-15 17:37

    小白福利!教你用代碼實(shí)現(xiàn)一個(gè)簡(jiǎn)單的頁面跳轉(zhuǎn)功能

    。 3. 開發(fā)第一個(gè)頁面 我們先開發(fā)第一個(gè)頁面,如圖4所示,第一個(gè)頁面是在容器中展示“代碼入門”文本和“一鍵入門”按鈕,它們分別可以通過Div、Text、和Button組件來實(shí)現(xiàn)。下
    發(fā)表于 05-16 17:22

    【PIMF】代碼(可視化界面)入門OpenHarmony3.1 Release應(yīng)用開發(fā)

    文件夾及對(duì)應(yīng)的visual文件。編寫第一個(gè)頁面工程同步完成后,第個(gè)頁面已有一個(gè)容器、文本(Hello World)顯示。為了更詳細(xì)地了解代碼開發(fā),我們刪除畫布原有模板組件,從零開始完
    發(fā)表于 05-20 11:54

    HarmonyOS/OpenHarmony應(yīng)用開發(fā)-ArkTSAPI組件總體分類與說明(上)

    一、行列與分欄 Column 沿垂直方向布局的容器組件。 ColumnSplit 垂直方向分隔布局容器組件,將子組件縱向布局,并在每個(gè)子
    發(fā)表于 08-15 11:14

    OpenHarmony組件復(fù)用示例

    組件復(fù)用。 總結(jié) 本文介紹了開發(fā)OpenHarmony應(yīng)用時(shí)如何使用組件復(fù)用能力,提供代碼示例,期望幫助關(guān)注組件復(fù)用的開發(fā)者朋友們。 如有任
    發(fā)表于 08-29 14:40

    OpenHarmony應(yīng)用開發(fā)—ArkUI組件集合

    |||||---GridItemControlPanel.ets |||||---GridItemSample.ets // 網(wǎng)格容器組件 ||||---gridSample |||||---GridControlPanel.ets
    發(fā)表于 09-22 14:56

    什么是代碼

    具有哪些功能嗎?你知道代碼開發(fā)平臺(tái)能夠開發(fā)哪些應(yīng)用程序嗎? 什么是代碼代碼開發(fā)是?種通
    發(fā)表于 05-09 15:26 ?2003次閱讀

    openharmony代碼質(zhì)量如何 openharmony代碼下載地址

    概念定義的新型應(yīng)用,不支持基于安卓 API/SDK 開發(fā)的用戶應(yīng)用程序運(yùn)行。 ? 源碼獲取方式 ? ? ? ?openharmony代碼下載地址:https://hmxt.org
    的頭像 發(fā)表于 06-22 17:18 ?2068次閱讀

    JavaScript常用檢測(cè)腳本實(shí)例代碼免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是JavaScript常用檢測(cè)腳本實(shí)例代碼免費(fèi)下載。
    發(fā)表于 02-03 17:02 ?6次下載

    openharmony 運(yùn)行代碼操作

    openharmony 運(yùn)行代碼操作 openharmony 運(yùn)行代碼,本文主要介紹windows環(huán)境下OpenHarmony社區(qū)
    的頭像 發(fā)表于 06-21 19:46 ?2243次閱讀

    openharmony代碼獲取分析

    本文檔將介紹如何獲取OpenHarmony源碼并說明OpenHarmony的源碼目錄結(jié)構(gòu)。OpenHarmony代碼組件的形式開放,開發(fā)
    的頭像 發(fā)表于 06-23 16:30 ?2809次閱讀
    <b class='flag-5'>openharmony</b><b class='flag-5'>代碼</b>獲取分析

    2022 OpenHarmony組件大賽,共建開源組件

    原標(biāo)題:共建開源組件生態(tài) 2022 OpenHarmony組件大賽等你來 2022年4月15日,2022 OpenHarmony組件大賽(下
    的頭像 發(fā)表于 04-26 17:31 ?1603次閱讀
    2022 <b class='flag-5'>OpenHarmony</b><b class='flag-5'>組件</b>大賽,共建開源<b class='flag-5'>組件</b>

    OpenHarmony PhotoView組件的介紹

    PhotoView是OpenAtom OpenHarmony(簡(jiǎn)稱“OpenHarmony”)系統(tǒng)的一款圖片縮放及瀏覽的三方組件,用于聲明式應(yīng)用開發(fā),支持圖片縮放、平移、旋轉(zhuǎn)等功能。
    的頭像 發(fā)表于 09-09 10:04 ?1225次閱讀

    關(guān)于OpenHarmony Jchardet組件介紹

    Jchardet是OpenAtom OpenHarmony(以下簡(jiǎn)稱“OpenHarmony”)系統(tǒng)的一款檢測(cè)文本編碼的組件。當(dāng)上傳一個(gè)文件時(shí),組件可以檢測(cè)并輸出該文件中文本使用的編碼
    的頭像 發(fā)表于 10-12 10:08 ?1048次閱讀

    OpenHarmony Jchardet組件簡(jiǎn)介及使用方法

    Jchardet是OpenAtom OpenHarmony(以下簡(jiǎn)稱“OpenHarmony”)系統(tǒng)的一款檢測(cè)文本編碼的組件。當(dāng)上傳一個(gè)文件時(shí),組件可以檢測(cè)并輸出該文件中文本使用的編碼
    的頭像 發(fā)表于 10-14 10:17 ?871次閱讀
    菲律宾太阳城官方网| 百家乐官网网页qq| 真人百家乐新开户送彩金| 太阳城娱乐场| 德州扑克教程| 百家乐官网桌子豪华| 百家乐是否违法| 百家乐最新产品| 澳门百家乐官网怎样下注| 网络百家乐电脑| 赌片百家乐的玩法技巧和规则| 百家乐转盘| 百家乐几点不用补牌| 香港六合彩票| 牌九百家乐官网的玩法技巧和规则| 互助| 百家乐官网视频二人麻将| 澳门百家乐赢技巧| 丰禾线上娱乐| 大佬百家乐的玩法技巧和规则| 百家乐技巧和规律| 百家乐游戏论坛| 来博百家乐游戏| 游戏机百家乐官网的技巧| 百家乐官网路单网下载| 大发888娱乐场下载 df888ylc3403 | 百家乐真钱游戏| 威尼斯人娱乐成| 大发888 官方| 友谊县| 腾飞国际娱乐城| 网上澳门| 网上娱乐城注册送现金| 威尼斯人娱乐代理注| 香港百家乐官网娱乐场开户注册| 大冶市| 澳门百家乐官网秘诀| 大发888怎么刷钱| 大三巴百家乐的玩法技巧和规则 | 麦盖提县| 沁源县|