HarmonyOS Stage模型 UIAbility生命周期状态

这篇具有很好参考价值的文章主要介绍了HarmonyOS Stage模型 UIAbility生命周期状态。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

HarmonyOS Stage模型 UIAbility生命周期状态,harmonyos,华为,ArkTS

UIAbility的生命周期包括Create、Foreground、Background、Destroy四个状态
  • Create状态,在UIAbility实例创建时触发,对应onCreate回调。可以在onCreate回调中进行相关初始化操作
    import UIAbility from '@ohos.app.ability.UIAbility';
    import window from '@ohos.window';
    
    export default class EntryAbility extends UIAbility {
        onCreate(want: Want, launchParam: AbilityConstant.LaunchParam) {
            // 应用初始化
            // ...
        }
        // ...
    }
  • Foreground状态,在UIAbility切换至前台时触发。对应onForeground回调,在UIAbility的UI页面可见之前,即UIAbility切换至前台时触发。可以在onForeground回调中申请系统需要的资源,或者重新申请在onBackground中释放的资源
    import UIAbility from '@ohos.app.ability.UIAbility';
    import window from '@ohos.window';
    
    export default class EntryAbility extends UIAbility {
        // ...
    
        onForeground() {
            // 申请系统需要的资源,或者重新申请在onBackground中释放的资源
            // ...
        }
    
    }
  • Background状态,在UIAbility切换至后台时触发。对应onBackground回调,在UIAbility的UI页面完全不可见之后,即UIAbility切换至后台时候触发。可以在onBackground回调中释放UI页面不可见时无用的资源,或者在此回调中执行较为耗时的操作,例如状态保存等
    import UIAbility from '@ohos.app.ability.UIAbility';
    import window from '@ohos.window';
    
    export default class EntryAbility extends UIAbility {
        // ...
    
        onBackground() {
            // 释放UI页面不可见时无用的资源,或者在此回调中执行较为耗时的操作
            // 例如状态保存等
            // ...
        }
    }
  •  Destroy状态,在UIAbility销毁时触发。可以在onDestroy回调中进行系统资源的释放、数据的保存等操作
    import UIAbility from '@ohos.app.ability.UIAbility';
    import window from '@ohos.window';
    
    export default class EntryAbility extends UIAbility {
        // ...
    
        onDestroy() {
            // 系统资源的释放、数据的保存等
            // ...
        }
    }
WindowStageCreate和WindowStageDestroy为窗口管理器(WindowStage)在UIAbility中管理UI界面功能的两个生命周期回调
  • WindowStageCreate回调,UIAbility实例创建完成之后,在进入Foreground之前,系统会创建一个WindowStage。每一个UIAbility实例都对应持有一个WindowStage实例。
    WindowStage为本地窗口管理器,用于管理窗口相关的内容,例如与界面相关的获焦/失焦、可见/不可见。

    可以在onWindowStageCreate回调中,设置UI页面加载、设置WindowStage的事件订阅。文章来源地址https://www.toymoban.com/news/detail-793152.html

    import UIAbility from '@ohos.app.ability.UIAbility';
    import window from '@ohos.window';
    
    export default class EntryAbility extends UIAbility {
        // ...
    
        onWindowStageCreate(windowStage: window.WindowStage) {
            // 设置UI页面加载
            // 设置WindowStage的事件订阅(获焦/失焦、可见/不可见)
            // ...
    
            windowStage.loadContent('pages/Index', (err, data) => {
                // ...
            });
        }
        // ...
    }
  • WindowStageDestroy回调,在UIAbility实例销毁之前,会先进入onWindowStageDestroy回调,我们可以在该回调中释放UI页面资源。
    import UIAbility from '@ohos.app.ability.UIAbility';
    import window from '@ohos.window';
    
    export default class EntryAbility extends UIAbility {
        // ...
    
        onWindowStageDestroy() {
            // 释放UI页面资源
            // ...
        }
    }
     

到了这里,关于HarmonyOS Stage模型 UIAbility生命周期状态的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • HarmonyOS(十三)——详解自定义组件的生命周期

    自定义组件的生命周期回调函数用于通知用户该自定义组件的生命周期,这些回调函数是私有的,在运行时由开发框架在特定的时间进行调用,不能从应用程序中手动调用这些回调函数。 下图展示的是被@Entry装饰的组件生命周期: 今天根据上面的流程图,我们从自定义组件

    2024年01月25日
    浏览(39)
  • HarmonyOS Stage模型基本概念讲解

    本文 我们来说harmonyos中的一种应用模型 Stage模型 官方提供了两种模型 一种是早期的 FA模型 另一种就是就是 harmonyos 3.1才开始的新增的一种模型 Stage模型 目前来讲 Stage 会成为现在乃至将来 长期推进的一种模型 也就是 无论是 现在的harmonyos 4.0 乃至 之后要发布的 harmonyos next

    2024年02月21日
    浏览(27)
  • HarmonyOS/OpenHarmony元服务开发-卡片生命周期管理

    创建ArkTS卡片,需实现FormExtensionAbility生命周期接口。 1.在EntryFormAbility.ts中,导入相关模块。 2.在EntryFormAbility.ts中,实现FormExtensionAbility生命周期接口,其中在onAddForm的入参want中可以通过FormParam取出卡片的相关信息。 说明:FormExtensionAbility进程不能常驻后台,即在卡片生命周

    2024年02月15日
    浏览(32)
  • HarmonyOS 自定义进度条 Stage模型

    通过onTouch监听滑动,动态改变圆角

    2024年02月21日
    浏览(23)
  • Stage模型HarmonyOS服务卡片开发整体说明

    服务卡片(以下简称“卡片”)是一种界面展示形式,可以将应用的重要信息或操作前置到卡片,以达到服务直达、减少体验层级的目的。卡片常用于嵌入到其他应用(当前卡片使用方只支持系统应用,如桌面)中作为其界面显示的一部分,并支持拉起页面、发送消息等基础

    2024年02月15日
    浏览(30)
  • 【HarmonyOS】掌握 Stage 模型的核心概念与应用

            从今天开始,博主将开设一门新的专栏用来讲解市面上比较热门的技术 “鸿蒙开发”,对于刚接触这项技术的小伙伴在学习鸿蒙开发之前,有必要先了解一下鸿蒙,从你的角度来讲,你认为什么是鸿蒙呢?它出现的意义又是什么?鸿蒙仅仅是一个手机操作系统吗?

    2024年02月02日
    浏览(32)
  • 鸿蒙HarmonyOS实战-Stage模型(应用上下文Context)

    应用上下文(Context)是应用程序的全局信息的接口。它是一个抽象类,提供了访问应用程序环境的方法和资源的方法。应用上下文可以用于获取应用程序的资源、启动Activity、发送广播等。每个应用程序都有一个应用上下文对象,它在整个应用程序的生命周期内都是唯一的。

    2024年02月20日
    浏览(39)
  • HarmonyOS/OpenHarmony(Stage模型)卡片开发AbilityStage组件容器

    AbilityStage是一个Module级别的组件容器,应用的HAP在首次加载时会创建一个AbilityStage实例,可以对该Module进行初始化等操作。 AbilityStage与Module一一对应,即一个Module拥有一个AbilityStage。 DevEco Studio默认工程中未自动生成AbilityStage,如需要使用AbilityStage的能力,可以手动新建一个

    2024年02月11日
    浏览(32)
  • HarmonyOS/OpenHarmony(Stage模型)应用开发单一手势(二)

    三、拖动手势(PanGesture) .PanGestureOptions(value?:{ fingers?:number; direction?:PanDirection; distance?:number}) 拖动手势用于触发拖动手势事件,滑动达到最小滑动距离(默认值为5vp)时拖动手势识别成功,拥有三个可选参数: fingers:非必选参数,用于声明触发拖动手势所需要的最少手指数

    2024年02月09日
    浏览(39)
  • HarmonyOS/OpenHarmony(Stage模型)应用开发单一手势(三)

    RotationGesture (value?:{ fingers ? :number ; angle ? :number }) 旋转手势用于触发旋转手势事件,触发旋转手势的最少手指数量为2指,最大为5指,最小改变度数为1度,拥有两个可选参数: fingers:非必选参数,用于声明触发旋转手势所需要的最少手指数量,最小值为2,最大值为5,默认值

    2024年02月09日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包