0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

OpenHarmony实例应用:【常用组件和容器低代码】

jf_46214456 来源:jf_46214456 作者:jf_46214456 2024-04-14 09:27 次阅读

介绍

本篇Codelab是基于ArkTS语言的低代码开发方式实现的一个简单实例。具体实现功能如下:

  1. 创建一个低代码工程。
  2. 通过拖拽的方式实现任务列表和任务信息界面的界面布局。
  3. 在UI编辑界面实现数据动态渲染和事件的绑定。

最终实现效果如下:

相关概念

低代码开发方式具有丰富的UI界面编辑功能,通过可视化界面开发方式快速构建布局,可有效降低开发者的上手成本并提升开发者构建UI界面的效率。

  • [List]:List 是很常用的滚动类容器组件之一,它按照水平或者竖直方向线性排列子组件, List 的子组件必须是 ListItem ,它的宽度默认充满 List 的宽度。
  • [循环渲染]:开发框架提供循环渲染(ForEach组件)来迭代数组,并为每个数组项创建相应的组件。
  • [警告弹窗]:显示警告弹窗组件,可设置文本内容与响应回调。

环境搭建

软件要求

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

硬件要求

  • 开发板类型:[润和RK3568开发板]。
  • OpenHarmony系统:3.2 Release。

环境搭建

完成本篇Codelab我们首先要完成开发环境的搭建,本示例以RK3568开发板为例,参照以下步骤进行:

  1. [获取OpenHarmony系统版本]:标准系统解决方案(二进制)。以3.2 Release版本为例:
  2. 搭建烧录环境。
    1. [完成DevEco Device Tool的安装]
    2. [完成RK3568开发板的烧录]
  3. 搭建开发环境。
    1. 开始前请参考[工具准备],完成DevEco Studio的安装和开发环境配置。
    2. 开发环境配置完成后,请参考[使用工程向导]创建工程(模板选择“Empty Ability”)。
    3. 工程创建完成后,选择使用[真机进行调测]。
    4. 鸿蒙Harmony&OpenHarmony开发指导:gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md点击或者复制转到。

搜狗高速浏览器截图20240326151450.png

代码结构解读

鸿蒙next文档学习
+mau123789v直接拿取
└──entry/src/main/ets           // 代码区
│  ├──common                    
│  │  ├──images                 // 图片
│  │  └──Const.ets              // 常量类
│  ├──entryability              
│  │  └──EntryAbility.ets       // 程序入口类
│  └──pages
│     ├──TaskDetailPage.ets     // 详情页的逻辑描述文件
│     └──TaskPage.ets           // 首页的逻辑描述文件
├──entry/src/main/resources     // 资源文件
└──entry/src/main/supervisual
   └──pages
      ├──TaskDetailPage.visual  // 详情页面的数据模型
      └──TaskPage.visual        // 首页页面的数据模型

创建低代码工程

首先需要先创建一个低代码的工程,创建工程时,在配置工程界面打开“Enable Super Visual”开关,点击“Finish”。工程创建完成后,在src/main目录下会生成一个supervisual目录,supervisual/pages目录下的.visual文件,可以通过组件拖拽实现的页面数据模型文件。ets/pages下的.ets文件是跟supervisual/pages中的文件一一对应的,是对应界面的逻辑描述文件。

低代码设计界面布局

打开TaskPage.visual文件,界面如图所示:

中间部分是界面布局后的整体效果。

左侧上部的“UI Control”模块是我们可以进行拖拽的组件。

左侧下部的“Component Tree”模块是我们界面上所有的元素树。

右侧的“Attributes&Styles”模块是当前选中的界面元素的属性和样式的详细信息,通过修改这个模块的内容来改变界面上元素的样式属性等信息。

任务列表页面分了上下两部分,上边拖进来了一个Row组件来展示界面标题,下边用一个List组件来实现任务列表的数据展示,每个Item子组件用的横向布局,里边拖进去了一个Image组件和两个Text组件。

实现数据动态渲染

页面布局完成后,需要给ListItem 组件绑定一个ForEach的数据源。如图:

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

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

同时给ListItem绑定一个点击事件来实现界面的跳转功能。

手动创建低代码页面

在pages下新建一个visual文件(右键->New->Visual),IDE会在ets/pages和supervisual/pages下同时创建一个名字相同后缀分别是.ets和.visual的文件,同样通过组件拖拽的方式去实现任务信息界面的布局,给界面绑定数据源和点击事件。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();
}

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 代码
    +关注

    关注

    30

    文章

    4823

    浏览量

    68998
  • 鸿蒙
    +关注

    关注

    57

    文章

    2392

    浏览量

    43033
  • OpenHarmony
    +关注

    关注

    25

    文章

    3744

    浏览量

    16549
收藏 人收藏

    评论

    相关推荐

    鸿蒙开发OpenHarmony组件复用案例

    和响应速度。 在OpenHarmony应用开发时,自定义组件被@Reusable装饰器修饰时表示该自定义组件可以复用。在父自定义组件下创建的可复用
    发表于 01-15 17:37

    小白福利!教你用代码实现一个简单的页面跳转功能

    。 3. 开发第一个页面 我们先开发第一个页面,如图4所示,第一个页面是在容器中展示“代码入门”文本和“一键入门”按钮,它们分别可以通过Div、Text、和Button组件来实现。下
    发表于 05-16 17:22

    【PIMF】代码(可视化界面)入门OpenHarmony3.1 Release应用开发

    文件夹及对应的visual文件。编写第一个页面工程同步完成后,第个页面已有一个容器、文本(Hello World)显示。为了更详细地了解代码开发,我们删除画布原有模板组件,从零开始完
    发表于 05-20 11:54

    HarmonyOS/OpenHarmony应用开发-ArkTSAPI组件总体分类与说明(上)

    一、行列与分栏 Column 沿垂直方向布局的容器组件。 ColumnSplit 垂直方向分隔布局容器组件,将子组件纵向布局,并在每个子
    发表于 08-15 11:14

    OpenHarmony组件复用示例

    组件复用。 总结 本文介绍了开发OpenHarmony应用时如何使用组件复用能力,提供代码示例,期望帮助关注组件复用的开发者朋友们。 如有任
    发表于 08-29 14:40

    OpenHarmony应用开发—ArkUI组件集合

    |||||---GridItemControlPanel.ets |||||---GridItemSample.ets // 网格容器组件 ||||---gridSample |||||---GridControlPanel.ets
    发表于 09-22 14:56

    什么是代码

    具有哪些功能吗?你知道代码开发平台能够开发哪些应用程序吗? 什么是代码代码开发是?种通
    发表于 05-09 15:26 2000次阅读

    openharmony代码质量如何 openharmony代码下载地址

    概念定义的新型应用,不支持基于安卓 API/SDK 开发的用户应用程序运行。   源码获取方式        openharmony代码下载地址:https://hmxt.org
    的头像 发表于 06-22 17:18 2062次阅读

    JavaScript常用检测脚本实例代码免费下载

    本文档的主要内容详细介绍的是JavaScript常用检测脚本实例代码免费下载。
    发表于 02-03 17:02 6次下载

    openharmony 运行代码操作

    openharmony 运行代码操作 openharmony 运行代码,本文主要介绍windows环境下OpenHarmony社区
    的头像 发表于 06-21 19:46 2242次阅读

    openharmony代码获取分析

    本文档将介绍如何获取OpenHarmony源码并说明OpenHarmony的源码目录结构。OpenHarmony代码组件的形式开放,开发
    的头像 发表于 06-23 16:30 2808次阅读
    <b class='flag-5'>openharmony</b><b class='flag-5'>代码</b>获取分析

    2022 OpenHarmony组件大赛,共建开源组件

    原标题:共建开源组件生态 2022 OpenHarmony组件大赛等你来 2022年4月15日,2022 OpenHarmony组件大赛(下
    的头像 发表于 04-26 17:31 1601次阅读
    2022 <b class='flag-5'>OpenHarmony</b><b class='flag-5'>组件</b>大赛,共建开源<b class='flag-5'>组件</b>

    OpenHarmony PhotoView组件的介绍

    PhotoView是OpenAtom OpenHarmony(简称“OpenHarmony”)系统的一款图片缩放及浏览的三方组件,用于声明式应用开发,支持图片缩放、平移、旋转等功能。
    的头像 发表于 09-09 10:04 1223次阅读

    关于OpenHarmony Jchardet组件介绍

    Jchardet是OpenAtom OpenHarmony(以下简称“OpenHarmony”)系统的一款检测文本编码的组件。当上传一个文件时,组件可以检测并输出该文件中文本使用的编码
    的头像 发表于 10-12 10:08 1045次阅读

    OpenHarmony Jchardet组件简介及使用方法

    Jchardet是OpenAtom OpenHarmony(以下简称“OpenHarmony”)系统的一款检测文本编码的组件。当上传一个文件时,组件可以检测并输出该文件中文本使用的编码
    的头像 发表于 10-14 10:17 871次阅读