鴻蒙OS 創(chuàng)建另一個(gè)頁(yè)面

2020-09-15 10:37 更新

創(chuàng)建 Feature Ability

  1. 在“Project”窗口,打開(kāi)“entry > src > main > java”,右鍵點(diǎn)擊“com.example.myapplication”文件夾,選擇“New > Ability > Empty Feature Ability(Java)”。

  1. 配置 Ability 時(shí),將“Page Name”設(shè)置為“SecondAbility”,點(diǎn)擊“Finish”。創(chuàng)建完成后,可以看到新增了“SecondAbility”和“SecondAbilitySlice”文件。

img

代碼編寫界面

在上一節(jié)中,我們用 XML 的方式編寫了一個(gè)包含文本和按鈕的頁(yè)面。為了幫助開(kāi)發(fā)者熟悉在代碼中創(chuàng)建布局的方式,接下來(lái)我們使用此方式編寫第二個(gè)頁(yè)面。

打開(kāi) “SecondAbilitySlice.java”文件,添加一個(gè)文本,示例代碼如下:

package com.example.myapplication.slice;

 
import ohos.aafwk.ability.AbilitySlice;
import ohos.aafwk.content.Intent;
import ohos.agp.colors.RgbColor;
import ohos.agp.components.DependentLayout;
import ohos.agp.components.DependentLayout.LayoutConfig;
import ohos.agp.components.Text;
import ohos.agp.components.element.ShapeElement;
import ohos.agp.utils.Color;

 
import static ohos.agp.components.ComponentContainer.LayoutConfig.MATCH_PARENT;
import static ohos.agp.components.ComponentContainer.LayoutConfig.MATCH_CONTENT;

 
public class SecondAbilitySlice extends AbilitySlice {

 
    @Override
    public void onStart(Intent intent) {
        super.onStart(intent);
        // 聲明布局
        DependentLayout myLayout = new DependentLayout(this);
        // 設(shè)置布局大小
        myLayout.setWidth(MATCH_PARENT);
        myLayout.setHeight(MATCH_PARENT);
        ShapeElement element = new ShapeElement();
        element.setRgbColor(new RgbColor(0, 0, 0));
        myLayout.setBackground(element);

 
        // 創(chuàng)建一個(gè)文本
        Text text = new Text(this);
        text.setText("Nice to meet you.");
        text.setWidth(MATCH_PARENT);
        text.setTextSize(55);
        text.setTextColor(Color.WHITE);
        // 設(shè)置文本的布局
        DependentLayout.LayoutConfig textConfig = new DependentLayout.LayoutConfig(MATCH_CONTENT,MATCH_CONTENT);
        textConfig.addRule(LayoutConfig.CENTER_IN_PARENT);
        text.setLayoutConfig(textConfig);
        myLayout.addComponent(text);

 
        super.setUIContent(myLayout);
    }

 
    @Override
    public void onActive() {
        super.onActive();
    }

 
    @Override
    public void onForeground(Intent intent) {
        super.onForeground(intent);
    }
}
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)