且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

【鸿蒙 HarmonyOS】创建 Java 语言 HarmonyOS 手机应用 ( 首次进入 DevEco Studio 配置环境 | 创建 Java 手机工程 | 鸿蒙工程代码目录简介 )(三)

更新时间:2022-08-17 07:46:39

三、鸿蒙工程代码目录简介


代码目录 : HelloWorld/entry/src/main/java 是代码目录 ;


资源目录 : HelloWorld/entry/src/main/resources 是资源目录 ;

【鸿蒙 HarmonyOS】创建 Java 语言 HarmonyOS 手机应用 ( 首次进入 DevEco Studio 配置环境 | 创建 Java 手机工程 | 鸿蒙工程代码目录简介 )(三)



程序入口 : MainAbility 是程序入口界面 , 相当于 Android 的 MainActivity ;


Ability : 其中的 Ability 相当于 Android 中的 Activity ;


package com.example.helloworld;
import com.example.helloworld.slice.MainAbilitySlice;
import ohos.aafwk.ability.Ability;
import ohos.aafwk.content.Intent;
public class MainAbility extends Ability {
    @Override
    public void onStart(Intent intent) {
        super.onStart(intent);
        super.setMainRoute(MainAbilitySlice.class.getName());
    }
}


设置布局 : super.setMainRoute(MainAbilitySlice.class.getName()) 中的 MainAbilitySlice 是本界面的布局 , 鸿蒙中的布局可以通过 Java 代码设置 , 也可以通过 XML 布局文件设置 ;


MainAbilitySlice.java 内容如下 :


package com.example.helloworld.slice;
import com.example.helloworld.ResourceTable;
import ohos.aafwk.ability.AbilitySlice;
import ohos.aafwk.content.Intent;
public class MainAbilitySlice extends AbilitySlice {
    @Override
    public void onStart(Intent intent) {
        super.onStart(intent);
        super.setUIContent(ResourceTable.Layout_ability_main);
    }
    @Override
    public void onActive() {
        super.onActive();
    }
    @Override
    public void onForeground(Intent intent) {
        super.onForeground(intent);
    }
}



其中对应的布局文件 Layout_ability_main 如下 :


<?xml version="1.0" encoding="utf-8"?>
<DirectionalLayout
    xmlns:ohos="http://schemas.huawei.com/res/ohos"
    ohos:height="match_parent"
    ohos:width="match_parent"
    ohos:orientation="vertical">
    <Text
        ohos:id="$+id:text_helloworld"
        ohos:height="match_content"
        ohos:width="match_content"
        ohos:background_element="$graphic:background_ability_main"
        ohos:layout_alignment="horizontal_center"
        ohos:text="Hello World"
        ohos:text_size="50"
    />
</DirectionalLayout>