赞
踩
跳转到指定Page的指定AbilitySlice
MainAbilitySlice按钮触发事件:
btn.setClickedListener(component -> {
Intent _intent = new Intent();
Operation operation = new Intent.OperationBuilder()
.withBundleName( getBundleName())
.withAction(SecondPageAbility.ACTION_TARGET)
.withAbilityName(SecondPageAbility.class.getName())
.build();
_intent.setOperation(operation);
startAbility(_intent);
});
- package com.example.myapplication3.slice;
-
- import com.example.myapplication3.ResourceTable;
- import com.example.myapplication3.SecondPageAbility;
- import ohos.aafwk.ability.AbilitySlice;
- import ohos.aafwk.content.Intent;
- import ohos.aafwk.content.Operation;
- import ohos.agp.components.Button;
- import ohos.agp.components.Component;
- import ohos.agp.components.Text;
- import ohos.utils.IntentConstants;
-
- public class MainAbilitySlice extends AbilitySlice {
- @Override
- public void onStart(Intent intent) {
- super.onStart(intent);
- super.setUIContent(ResourceTable.Layout_ability_main);
- Text text = (Text) findComponentById(ResourceTable.Id_text_main);
- Button btn = (Button) findComponentById(ResourceTable.Id_btn_main);
- text.setClickedListener(new Component.ClickedListener() {
- @Override
- public void onClick(Component component) {
- Intent _intent = new Intent();
-
- Operation operation = new Intent.OperationBuilder()
- .withDeviceId("")
-
- .withBundleName(getBundleName())
-
- .withAbilityName(SecondPageAbility.class.getName())
- // .withAction(SecondPageAbility.ACTION_TARGET)
- .build();
- _intent.setOperation(operation);
- // _intent.setAction(SecondPageAbility.ACTION_TARGET);
-
- startAbility(_intent);
- }
- });
- btn.setClickedListener(component -> {
- Intent _intent = new Intent();
- Operation operation = new Intent.OperationBuilder()
- .withBundleName( getBundleName())
- .withAction(SecondPageAbility.ACTION_TARGET)
- .withAbilityName(SecondPageAbility.class.getName())
-
- .build();
- _intent.setOperation(operation);
-
-
- startAbility(_intent);
- });
- }
-
- @Override
- public void onActive() {
- super.onActive();
- }
-
- @Override
- public void onForeground(Intent intent) {
- super.onForeground(intent);
- }
- }
SecondPageAbility设置actionRoute
- package com.example.myapplication3;
-
- import com.example.myapplication3.slice.SecondPageAbilitySlice;
- import com.example.myapplication3.slice.TargetAbilitySlice;
- import ohos.aafwk.ability.Ability;
- import ohos.aafwk.content.Intent;
-
- public class SecondPageAbility extends Ability {
- public static final String ACTION_TARGET = "action.intent.target_ability_slice";
- public static final String ACTION_Second = "action.intent.second_ability_slice";
-
- @Override
- public void onStart(Intent intent) {
- super.onStart(intent);
- super.setMainRoute(SecondPageAbilitySlice.class.getName());
- // super.addActionRoute(ACTION_Second, SecondPageAbilitySlice.class.getName());
- super.addActionRoute(ACTION_TARGET, TargetAbilitySlice.class.getName());
- // super.addActionRoute("action.intent.target_ability_slice", TargetAbilitySlice.class.getName());
-
- }
- }
config.json添加,skills/actions
capsule_btn_element.xml
- <?xml version="1.0" encoding="utf-8"?>
- <shape xmlns:ohos="http://schemas.huawei.com/res/ohos"
- ohos:shape="rectangle">
- <corners
- ohos:radius="100"/>
- <solid
- ohos:color="#007CFD"/>
- </shape>
按钮样式的使用方法:
工程代码:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。