华为鸿蒙开发第三课

简介: 华为鸿蒙开发第三课

学习网站:千锋教育鸿蒙系统开发教程,HarmonyOS 2.0鸿蒙应用开发实战教程(开发属于自己的第一个鸿蒙APP)_哔哩哔哩_bilibili

官方文档:HarmonyOS系统开发指导_HarmonyOS系统能力API参考 - HarmonyOS应用开发官网


一、目录结构


b3c53ccfe575235a9a942179d43b3018_0cd2d52287784a1f80b83af7a64a03a2.png

  1. java目录:仅Phone、Tablet、TV和Wearable设备的JS工程才存在,作为HarmonyOS应用/服务的启动入口。
  2. common目录:用于存放公共资源文件,如媒体资源、自定义组件和JS文档等。
  3. i18n目录:用于存放多语言的json文件,可以在该目录下定义应用/服务在不同语言系统下显示的内容,如应用/服务文本词条、图片路径等,详情请参考多语言支持。
  4. pages目录:pages文件夹下可以包含1个或多个页面,每个页面都需要创建一个文件夹。页面文件夹下主要包含3种文件类型:css、js和hml文件。
  • pages>index>index.hml文件:hml文件定义了页面的布局结构,使用到的组件,以及这些组件的层级关系,详情请参考HML语法参考。
  • pages>index>index.css文件:css文件定义了页面的样式与布局,包含样式选择器和各种样式属性等,详情请参考CSS语法参考。
  • pages>index>index.js文件:js文件描述了页面的行为逻辑,此文件里定义了页面里所用到的所有的逻辑关系,比如数据、事件等,详情请参考JS语法参考。
  • resources:用于存放资源配置文件,比如:全局样式、多分辨率加载等配置文件。resources资源引用示例请参考根据设备分辨率加载图片。
  1. app.js文件:全局的JavaScript逻辑文件和应用/服务的生命周期管理。


二、生命周期


a61c2b68d16de4b16526d92d4e302ecd_13de6d13b5524aef8cb2a79823eb250e.png


  • onStart()

当系统首次创建 Page 实例时,触发该回调。对于一个 Page 实例,该回调在其生命周期过程中仅触发一次, Page 在该逻辑后将进入 INACTIVE 状态。开发者必须重写该方法,并在此配置默认展示的 AbilitySlice。

  • onActive()

Page 会在进入 INACTIVE 状态后来到前台,然后系统调用此回调。Page 在此之后进入 ACTIVE 状态,该状态是应用与用户交互的状态。Page 将保持在此状态,除非某类事件发生导致 Page 失去焦点,比如用户点击返回键或导航到其他 Page。当此类事件发生时,会触发 Page 回到 INACTIVE 状态,系统将调用 onInactive() 回调。此后,Page 可能重新回到 ACTIVE 状态,系统将再次调用 onActive() 回调。因此,开发者通常需要成对实现 onActive()和 onInactive(),并在 onActive() 中获取在 onInactive() 中被释放的资源。

  • onStop()

系统将要销毁 Page 时,将会触发此回调函数,通知用户进行系统资源的释放。


三、list组件


https://developer.harmonyos.com/cn/docs/documentation/doc-references/js-components-container-list-0000000000611496

<list class="list">
                    <list-item for="{{ array }}" class="listItem">
                        <text class="text">{{ $item.value }}</text>
                    </list-item>
                </list>

data: {
        title: "",
        test:"测试",
        mid:'',
        "array": [
            {
                "value": "列表文本"
            },
            {
                "value": "列表文本"
            },
            {
                "value": "列表文本"
            },
            {
                "value": "列表文本"
            },
        ],
    },

目录
相关文章
|
15天前
|
开发框架 前端开发 JavaScript
【HarmonyOS Next之旅】基于ArkTS开发(二) -> UI开发一
本文介绍了方舟开发框架(ArkUI)及其两种开发范式:基于ArkTS的声明式开发范式和类Web开发范式。ArkUI是用于构建HarmonyOS应用界面的UI框架,提供极简UI语法和基础设施。声明式开发范式使用ArkTS语言,以组件、动画和状态管理为核心,适合复杂团队协作;类Web开发范式采用HML、CSS、JavaScript三段式开发,适用于简单界面应用,贴近Web开发者习惯。文中还概述了两者的架构和基础能力,帮助开发者选择合适的范式进行高效开发。
66 15
|
15天前
|
编解码 前端开发 Java
【HarmonyOS Next之旅】基于ArkTS开发(二) -> UI开发三
本文介绍了基于声明式UI范式的图形绘制与动画效果实现方法,涵盖绘制图形、添加动画效果及常见组件说明三部分内容。在绘制图形部分,详细讲解了如何通过Circle组件为食物成分表添加圆形标签,以及使用Path组件结合SVG命令绘制自定义图形(如应用Logo)。动画效果部分则展示了如何利用animateTo实现闪屏动画,包括渐出、放大效果,并设置页面跳转;同时介绍了页面间共享元素转场动画的实现方式。最后,文章列举了声明式开发范式中的各类组件及其功能,帮助开发者快速上手构建复杂交互页面。
55 11
|
16天前
|
开发工具
鸿蒙开发:DevEcoStudio中的代码生成
其实大家可以发现,一篇文章下来,都是基于右键后的Generate选项,所以,还是非常的简单的,当然了,还是希望大家,以上的功能,能够应用在实际的开发中,而不是停留在纸面上。
鸿蒙开发:DevEcoStudio中的代码生成
|
12天前
|
UED 容器
5.HarmonyOS Next开发宝典:掌握Flex布局的艺术
Flex布局(弹性布局)是HarmonyOS Next中最强大的布局方式之一,它提供了一种更加高效、灵活的方式来对容器中的子元素进行排列、对齐和分配空间。无论是简单的居中显示,还是复杂的自适应界面,Flex布局都能轻松应对。
34 0
|
17天前
|
存储 JSON 搜索推荐
鸿蒙5开发宝藏案例分享---自由流转的拖拽多屏联动
本文分享了鸿蒙开发中的五大实用案例,包括页面跳转、列表渲染、网络请求封装、数据持久化和系统能力调用。通过具体代码示例与避坑指南,手把手教你掌握常用功能,助你高效开发。无论是初学者还是进阶开发者,都能从中受益!
|
17天前
|
传感器 人工智能 JSON
鸿蒙5开发宝藏案例分享---应用接续提升内容发布体验
本文分享了鸿蒙应用接续功能的实战经验,帮助开发者实现跨设备流转。文章介绍了该功能的核心要点、开发条件及多个实战案例,如图文草稿跨设备接续、协同文档实时接续和社交通讯录接续,并提供了避坑指南与调试秘籍。通过动态压缩策略优化传输速度,结合AI能力提升体验。适合想了解鸿蒙跨设备开发的开发者参考学习。
|
17天前
|
传感器 数据管理 定位技术
鸿蒙5开发宝藏案例分享---一多开发实例(游戏)
这篇文章为开发者揭示了鸿蒙系统中的隐藏宝藏——官方提供的高质量开发案例。通过这些案例,可以大幅提升开发效率,轻松实现分布式游戏、跨端协同等功能。文中详细介绍了四个实战案例:用手机作为电视游戏手柄的分布式游戏手柄、支持多设备数据同步的跨端接力抓宠功能、针对中低端设备优化3D粒子特效的方法,以及利用卡片服务创造各种实用功能的技巧。最后还提供了避坑指南,帮助开发者更高效地利用文档资源。
|
16天前
|
JavaScript 小程序 API
UniApp X:鸿蒙原生开发的机会与DCloud的崛起之路·优雅草卓伊凡
UniApp X:鸿蒙原生开发的机会与DCloud的崛起之路·优雅草卓伊凡
77 12
UniApp X:鸿蒙原生开发的机会与DCloud的崛起之路·优雅草卓伊凡
|
12天前
|
JSON IDE Java
鸿蒙开发:json转对象插件回来了
首先,我重新编译了插件,进行了上传,大家可以下载最新的安装包进行体验了,还是和以前一样,提供了在线版和IDE插件版,两个选择,最新的版本,除了升级了版本,兼容了最新的DevEco Studio ,还做了一层优化,就是针对嵌套对象和属性的生成,使用方式呢,一年前的文章中有过详细的概述,这里呢也简单介绍一下。
鸿蒙开发:json转对象插件回来了
|
12天前
|
索引
鸿蒙开发:自定义切换动画实现Swiper层叠滑动效果
customContentTransition不仅仅可以实现平移上的改变,很多的效果,我们都可以实现,比如放大缩小,旋转等等。
鸿蒙开发:自定义切换动画实现Swiper层叠滑动效果