HarmonyOs~应用程序框架进阶之 UIAbility组件间的交互

我们要知道一个概念 一个应用可以有多个模块 每个模块又可以有多个UIAbility 每个UIAbility又可以有多个页面

如何创建同模块的UIAbility

首先我们创建好项目之后  就是有一个UIAbility组件存在的  那么如果我想要在同模块创建一个UIAbility怎么创建

想要创建的模块-->>新建-->>Abilit就创建好了一个同模块的UIAbility

如果想要实现跳转  就需要在跳转的UIAbility中做操作

Button('点击去同模块的')
        .onClick(()=>{
          let wantInfo: Want = {
            deviceId: '', // deviceId为空表示本设备
            bundleName: 'com.example.myapplication',
            moduleName: 'entry', // moduleName非必选
            abilityName: 'EntryAbility1',
            parameters: {
              // 自定义信息
              info: '来自EntryAbility 页面'
            },
          };
          this.context.startAbility(wantInfo).then(() => {
            console.log( 'startAbility success.');
          }).catch((error: BusinessError) => {
            console.log( 'startAbility failed.');
          });
        })

不知道bundleName的话可以看这个文件

moduleName代表是哪个模块  、

abilityName代表是要跳转的UIAbility名字

不知道的可以看下图

然后去测试机上试一下  同模块就能跳转了 

不同模块的UIAbility拉起

首先我们先创建不同的模块

创建完成之后

在要拉起应用的模块写个按钮

      Button('点击去不同模块的')
        .onClick(()=>{
          let wantInfo: Want = {
            deviceId: '', // deviceId为空表示本设备
            bundleName: 'com.example.myapplication',
            moduleName: 'NoSameModel', // moduleName非必选
            abilityName: 'NoSameModelAbility',
            parameters: {
              // 自定义信息
              info: '来自EntryAbility 页面'
            },
          };
          this.context.startAbility(wantInfo).then(() => {
            console.log( 'startAbility success.');
          }).catch((error: BusinessError) => {
            console.log( 'startAbility failed.');
          });
        })

同上

不知道bundleName的话可以看这个文件

moduleName代表是哪个模块  、

abilityName代表是要跳转的UIAbility名字

不知道的可以看下图

最重要的一步   因为是跨模块拉起 所以编译的时候

1.

.

2.

 把这两个模块都编译进去 这样的话

打开测试机 点击拉起不同模块按钮  就能拉起不同模块的UIAbility了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值