一起学习HarmonyOS应用开发——基础篇(7)

前言,记得之前面试的时候经常会被问到安卓的生命周期的一些函数方法在什么场景会被调用,看了鸿蒙的生命周期里面的函数方法总个数发现比安卓上面的少一些,这样说来是不是鸿蒙的比较简单?

1、首先开发鸿蒙系统的时候,软件打开出现的第一个页面在哪里设置?

src->main->ets->entryability->EntryAblity.ts文件中

 

2、新建一个ArkTS文件后,一定要记得添加页面路径,不然后面无法跳转成功。

右键->New->ArkTS File->输入名称,点击Enter键。跳转失败的提示就是:this uri not support in route push.

resources->base->profile->main_pages.json文件中添加页面路径。

router.pushUrl({ url: 'pages/SecondPage' });//页面跳转方法注意:页面需要显示的组件,前面一定要有@Entry装饰。

 

3、生命周期分为页面生命周期组件生命周期两种。

页面生命周期里面的方法有onPageShow()、onPageHide()、onBackPress()。组件生命周期里面的方法有aboutToAppear()、aboutToDisappear()。​​​​​​​
onPageShow():页面显示的时候触发这个方法。onPageHide():页面隐藏的时候触发这个方法。onBackPress():当用户点击返回按钮的时候触发这个方法。aboutToAppear():组件创建的时候调用这个方法。(由于在build函数方法之前执行,所以特别适合在这里面初始化数据)aboutToDisappear():组件销毁前调用,这里适合释放不再使用的资源。

4、@Styles装饰器:定义组件重用样式

代码中经常要对一些组件设置一些属性(宽度、高度、字体大小、背景颜色等等),而好多组件使用的属性是一样,这样就会出现很多重复的代码。这个时候,我们就需要设计一个样式,方便其他组件使用,减少重复代码。

 ​​​​​​​

// 定义在全局的@Styles封装的样式@Styles function FirstFancy  () {  .width(200).height(100).backgroundColor(Color.Pink)}@Entry@Componentstruct StylesTest{  build() {    Column({ space: 10 }) {      // 使用全局的@Styles封装的样式      Text('FancyA').FirstFancy().fontSize(30)      Text('FancyB').FirstFancy().fontSize(40).fontColor(Color.Red)    }.width('100%').height('100%')  }}

 注意:这个样式可以写在全局,也可以写在组件内。

5、@Builder装饰器:自定义构建函数。调用自定义组件的时候可以传递参数。

 ​​​​​​​

@Builder function firstBuilder( message: string) {  Row() {    Text(`自定义构建函数: ${message} `)  }}@Entry@Componentstruct BuilderTest {  build() {    Column() {      firstBuilder('12345')    }.width('100%').height('100%')  }}

 

相关推荐

  1. HarmonyOS应用开发基础认证

    2024-04-08 22:30:03       37 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-08 22:30:03       19 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-08 22:30:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-08 22:30:03       20 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-08 22:30:03       20 阅读

热门阅读

  1. Vue登陆鉴权方案(token)

    2024-04-08 22:30:03       11 阅读
  2. Vue笔记

    2024-04-08 22:30:03       12 阅读
  3. 深入浅出 -- 系统架构之负载均衡Nginx缓冲区

    2024-04-08 22:30:03       13 阅读
  4. Shell学习 - 2.25 Shell $[]:对整数进行数学运算

    2024-04-08 22:30:03       12 阅读
  5. ChatGPT革新学术写作方式:打造出色论文

    2024-04-08 22:30:03       13 阅读
  6. qiankun按需加载微应用方案

    2024-04-08 22:30:03       13 阅读
  7. 【阅读笔记】《同意》

    2024-04-08 22:30:03       13 阅读
  8. 详细介绍下PYTHON API的用法

    2024-04-08 22:30:03       16 阅读
  9. [TS面试]TS中类型的全局声明与局部声明?

    2024-04-08 22:30:03       14 阅读
  10. 我的项目笔记

    2024-04-08 22:30:03       14 阅读
  11. C++学习笔记九--模版

    2024-04-08 22:30:03       13 阅读