06鸿蒙【Stage模型】

Stage模型

  • Stage模型概述
  • 应用配置文件
  • UIAbility生命周期
  • 页面及组件生命周期
  • UIAbility的启动模式

Stage模型概述

在这里插入图片描述
创建模块
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

应用配置文件

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
注意应用列表的图标描述,和桌面上app图标描述不在一个地方修改
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

UIAbility生命周期

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
应用启动会准备好一个Ability舞台,然后在它上面就会帮我们去创建一个UIAbility实例,接着去初始化windows stage的一个舞台,在windows stage created的构造函数里,我们就能够拿到windows stage,利用它去加载和渲染预面,那么页面加载和渲染的过程,是如何的呢?接下来看页面及组件生命周期

页面及组件生命周期

在这里插入图片描述
当用户返回之前的页面,或者是跳转到新页面的时候,都有可能离开当前页面,那么当前页面就会从展示的一个状态,变成隐藏的状态了。
那么如果说页面隐藏了,页面中的这些个组件会怎么样呢?是隐藏了还是销毁了呢?
它取决于当前的这个页面,在隐藏后有没有被销毁。比如:pushUrl(),它会将新的页面压入页面栈,原来的不会销毁,而replaceUrl()会销毁原来的页面,组件就会被销毁,子组件也一并销毁。返回操做也是一样,会把栈顶的页面销毁。
页面被销毁,里面的组件肯定被销毁
但是如果说页面还在,里面的组件不一定在
比如我们点击按钮隐藏子组件,那么子组件就被销毁了。

在这里插入图片描述

例子

在这里插入图片描述
组件切换显示隐藏的时候是否会触发生命周期钩子

添加新的元素是否会触发组件的生命周期钩子
删除元素是否会触发组件的生命周期钩子

使用这两种跳转方式,页面的生命周期如何触发
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
我们可以给forEach加第三个参数,key,避免重新渲染

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

UIAbility的启动模式

Singleton启动模式

在这里插入图片描述

验证SingLeton启动模式
在这里插入图片描述

在这里插入图片描述

standard启动模式

在这里插入图片描述
在这里插入图片描述

multion模式

在这里插入图片描述

specified启动模式

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
下面例子演示跨Ablity的跳转
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
此时多个Ability存在
在这里插入图片描述
在这里插入图片描述
不用频发的创建,只是前后台切换,效率高点

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值