在一个页面怎么实现多个AbilitySlice?

在Ability中已经定义了一个super.setMainRoute(MainAbilitySlice.class.getName());这已经把AbilitySlice固定了,要想在开出一个AbilitySlice,难道还要在写一行super.setMainRoute(MainAbilitySlice.class.getName());吗?

还有PA和FA有什么区别? 是类似android中activity和fragment的区别吗?

#每日一问一答#

 

鸿蒙开发
2021-01-06 10:27:47
浏览
2
收藏 0
回答 5
待解决
回答 5
按赞同
/
按时间
红叶亦知秋
5

鸿蒙OS将Ability分为两大类:
1. 带显示功能的Ability,Feature Ability(FA 功能能力,前台)
2. 不带显示功能的Ability,Particle Ability(PA,后台)
PA 再细分为Service Ability(服务能力)和 Data Ability(数据能力)

分享
微博
QQ
微信
回复
2021-01-06 14:14:07
张荣超老师
1

可以调用方法addActionRoute(),如下所示:

public class MainAbility extends Ability {
    @Override
    public void onStart(Intent intent) {
        super.onStart(intent);
        super.setMainRoute(MainAbilitySlice.class.getName());

 

        addActionRoute("slice1", AbilitySlice1.class.getName());
    }
}

同时,在config.json里对应的MainAbility中添加如下配置:

"actions": [
  "abilityslice1"
]

这样,就可以通过startAbility(new Intent().setAction("abilityslice1"))访问AbilitySlice1了。

分享
微博
QQ
微信
回复
2021-02-09 22:55:42
BLUESKYHOST

有解决方案吗我也需要因为我要做底部导航这个问题

分享
微博
QQ
微信
回复
2021-02-06 09:18:41
00000k

还有个fraction,java api文档中有,可以参考下

分享
微博
QQ
微信
回复
2021-02-07 01:08:20
BLUESKYHOST

你想实现什么功能,有这个需求

分享
微博
QQ
微信
回复
2021-02-07 15:09:38
相关问题
Hi3861怎么获取一个随机数?
4518浏览 • 1回复 已解决
PageAbility配合多个Slice实现页面间切换
6816浏览 • 4回复 已解决
鸿蒙 如何实现一个渐变的圆形图片;
4031浏览 • 2回复 已解决
如何实现Fraction跳转到AbilitySlice
3205浏览 • 3回复 已解决
JS如可开发一个可横向拖动的表格
644浏览 • 1回复 待解决
js如何清空一个input 输入框的内容
223浏览 • 1回复 待解决