鸿蒙OS 创建另一个页面

2020-09-15 10:37 更新

创建 Feature Ability

  1. 在“Project”窗口,打开“entry > src > main > java”,右键点击“com.example.myapplication”文件夹,选择“New > Ability > Empty Feature Ability(Java)”。

  1. 配置 Ability 时,将“Page Name”设置为“SecondAbility”,点击“Finish”。创建完成后,可以看到新增了“SecondAbility”和“SecondAbilitySlice”文件。

img

代码编写界面

在上一节中,我们用 XML 的方式编写了一个包含文本和按钮的页面。为了帮助开发者熟悉在代码中创建布局的方式,接下来我们使用此方式编写第二个页面。

打开 “SecondAbilitySlice.java”文件,添加一个文本,示例代码如下:

  1. package com.example.myapplication.slice;
  2. import ohos.aafwk.ability.AbilitySlice;
  3. import ohos.aafwk.content.Intent;
  4. import ohos.agp.colors.RgbColor;
  5. import ohos.agp.components.DependentLayout;
  6. import ohos.agp.components.DependentLayout.LayoutConfig;
  7. import ohos.agp.components.Text;
  8. import ohos.agp.components.element.ShapeElement;
  9. import ohos.agp.utils.Color;
  10. import static ohos.agp.components.ComponentContainer.LayoutConfig.MATCH_PARENT;
  11. import static ohos.agp.components.ComponentContainer.LayoutConfig.MATCH_CONTENT;
  12. public class SecondAbilitySlice extends AbilitySlice {
  13. @Override
  14. public void onStart(Intent intent) {
  15. super.onStart(intent);
  16. // 声明布局
  17. DependentLayout myLayout = new DependentLayout(this);
  18. // 设置布局大小
  19. myLayout.setWidth(MATCH_PARENT);
  20. myLayout.setHeight(MATCH_PARENT);
  21. ShapeElement element = new ShapeElement();
  22. element.setRgbColor(new RgbColor(0, 0, 0));
  23. myLayout.setBackground(element);
  24. // 创建一个文本
  25. Text text = new Text(this);
  26. text.setText("Nice to meet you.");
  27. text.setWidth(MATCH_PARENT);
  28. text.setTextSize(55);
  29. text.setTextColor(Color.WHITE);
  30. // 设置文本的布局
  31. DependentLayout.LayoutConfig textConfig = new DependentLayout.LayoutConfig(MATCH_CONTENT,MATCH_CONTENT);
  32. textConfig.addRule(LayoutConfig.CENTER_IN_PARENT);
  33. text.setLayoutConfig(textConfig);
  34. myLayout.addComponent(text);
  35. super.setUIContent(myLayout);
  36. }
  37. @Override
  38. public void onActive() {
  39. super.onActive();
  40. }
  41. @Override
  42. public void onForeground(Intent intent) {
  43. super.onForeground(intent);
  44. }
  45. }
以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号