0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一招就行—鸿蒙OS 编写第一个页面

王程 来源:jf_75796907 作者:jf_75796907 2024-01-26 18:01 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

Java UI 框架中,提供了两种编写布局的方式:在XML中声明UI布局和在代码中创建布局。这两种方式创建出的布局没有本质差别,为了熟悉两种方式,我们将通过 XML 的方式编写第一个页面,通过代码的方式编写第二个页面。

XML 编写页面

在“Project”窗口,打开“entry > src > main > resources > base”,右键点击“base”文件夹,选择“New > Directory”,命名为“layout”。

wKgaomWzgoyAJOrVAAASymH2WEg447.png

右键点击“layout”文件夹,选择“New > File”,命名为“main_layout.xml”。

wKgZomWzgpaAaca3AAARLEDwkfQ639.png

在“layout”文件夹下可以看到新增了“main_layout.xml”文件。

wKgZomWzgp2Aa7w2AAAR9R6uYrc800.png

打开“main_layout.xml”文件,添加一个文本和一个按钮,示例代码如下:

 < ?xml version="1.0" encoding="utf-8"? >
   < DependentLayout
           xmlns:ohos="http://schemas.huawei.com/res/ohos"
           ohos:width="match_parent"
           ohos:height="match_parent"
           ohos:background_element="#000000" >
       < Text
               ohos:id="$+id:text"
               ohos:width="match_content"
               ohos:height="match_content"
               ohos:center_in_parent="true"
               ohos:text="Hello World"
               ohos:text_color="white"
               ohos:text_size="32fp"/ >
       
   < /DependentLayout >

上述按钮的背景是通过“button_element”来显示的,需要在“base”目录下创建“graphic”文件夹,在“graphic”文件夹中新建一个“button_element.xml”文件。
img

wKgaomWzgraAHQWwAAARO_J3Br0617.png

“button_element.xml”的示例代码如下:

 < ?xml version="1.0" encoding="utf-8"? >
   < shape
           xmlns:ohos="http://schemas.huawei.com/res/ohos"
           ohos:shape="oval" >
       < solid
               ohos:color="#007DFF"/ >
   < /shape >

加载 XML 布局

在“Project”窗口中,选择“entry> src > main> java > com.example.helloworld > slice” ,打开“MainAbilitySlice.java”文件。

重写onStart()方法加载 XML 布局,示例代码如下:

package com.example.myapplication.slice;
    
   import com.example.myapplication.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_main_layout); // 加载XML布局
       }
    
       @Override
       public void onActive() {
           super.onActive();
       }
    
       @Override
       public void onForeground(Intent intent) {
           super.onForeground(intent);
       }
   }

请参考应用运行,效果如图所示:

wKgaomWzgsKAJbkKAACP-7PE6kY833.png

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • JAVA
    +关注

    关注

    20

    文章

    2997

    浏览量

    115683
  • 鸿蒙OS
    +关注

    关注

    0

    文章

    192

    浏览量

    5306
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Linux 下交叉编译实战:跑起来你的第一个 STM32 程序

    跑起来你的第一个STM32程序。、准备工作在开始之前,需要准备:1、Linux开发环境Ubuntu、Debian或其他主流发行版都可以。2、ARMGCC交叉编译工具
    的头像 发表于 11-24 19:04 242次阅读
    Linux 下交叉编译实战:跑起来你的<b class='flag-5'>第一个</b> STM32 程序

    知乎开源“智能预渲染框架” 几行代码实现鸿蒙应用页面“秒开”

    ,交互延迟等核心痛点,通过智能预测用户浏览目标进行提前渲染,只需几行代码即可显著提升复杂页面的加载性能,实现“页面秒开”的高效体验,为鸿蒙开发者带来开发效率和用户体验的双重飞跃。 随着鸿蒙
    的头像 发表于 08-29 14:32 470次阅读
    知乎开源“智能预渲染框架” 几行代码实现<b class='flag-5'>鸿蒙</b>应用<b class='flag-5'>页面</b>“秒开”

    【HarmonyOS 5】鸿蒙页面和组件生命周期函数

    【HarmonyOS 5】鸿蒙页面和组件生命周期函数 ##鸿蒙开发能力 ##HarmonyOS SDK应用服务##鸿蒙金融类应用 (金融理财#
    的头像 发表于 07-11 18:24 794次阅读

    HarmonyOS实战:一招搞定保存图片到相册

    保存图片功能几乎是每个应用程序必备的功能之,当用户遇到喜欢的图片时可以保存到手机相册。那么在鸿蒙中保存图片是否也需要申请用户存储权限以及如何将图片保存到相册,本文将详细讲述怎么保存网络图片,指定布局生成图片保存至相册的功能实现。
    的头像 发表于 06-24 17:04 988次阅读

    HarmonyOS实战:一招解决等待多个并发结果

    前言 年前公司与华为签订了合作备忘录,加入了鸿蒙生态这个大家庭。。公司想赶着鸿蒙纯血系统上市之前,发布自己的鸿蒙软件。开发鸿蒙NEXT版本软件就变成了今年的
    的头像 发表于 06-09 14:57 400次阅读
    HarmonyOS实战:<b class='flag-5'>一招</b>解决等待多个并发结果

    如何在KaihongOS操作系统中写动态的页面

    的转场动效等,推荐使用Navigation。 第一个页面跳转到第二页面。 在第一个页面中,跳
    发表于 04-25 06:42

    DevEco Studio 写简单的页面

    简单的页面 说明: 为确保运行效果,本文及之后的文档示例都将以使用DevEco Studio 4.1 Release版本为例。 我们在构建第一个应用程序中新建了
    发表于 04-24 07:36

    文教你构建第一个应用程序

    ;) } .height('100%')}}步骤 2 在编辑窗口右上角的侧边工具栏,点击Previewer,打开预览器。 步骤 3第一个页面效果如下图所示: ArkTS工程目录
    发表于 04-24 06:41

    Get这个秘籍,鸿蒙原生应用页面滑动丝滑无比

    鸿蒙应用开发中,部分应用页面在滑动时会出现白块或白屏的问题,不仅困扰开发者,还直接影响用户体验。针对这痛点,华为近期分别推出了针对鸿蒙原生应用ArkUI
    发表于 03-06 14:41

    一招治“浮”! 高精度3D线激光轮廓测量仪保障螺丝装配

    浮高产生的系列问题,都将对机器的安全运行埋下隐患。 各类因素产生的螺丝浮高 GL-8000系列 为您一招治“浮” 螺丝浮高检测案例 01 检测需求 1.次性扫描检测4螺丝的高度差
    的头像 发表于 02-06 18:15 904次阅读
    <b class='flag-5'>一招</b>治“浮”! 高精度3D线激光轮廓测量仪保障螺丝装配

    原生鸿蒙第一个出圈的,为什么是安全?

    属于更加安全、可信、便捷的数字未来,也属于今天的你我
    的头像 发表于 01-11 15:53 4728次阅读
    原生<b class='flag-5'>鸿蒙</b><b class='flag-5'>第一个</b>出圈的,为什么是安全?

    鸿蒙原生页面高性能解决方案上线OpenHarmony社区 助力打造高性能原生应用

    随着HarmonyOS NEXT的正式推出,鸿蒙原生应用开发热度高涨,数量激增。但在三方应用鸿蒙化进程中,性能问题频出。为此,HarmonyOS NEXT推出了整套原生页面高性能解决
    发表于 01-02 18:00

    《HarmonyOS第一课》焕新升级,赋能开发者快速掌握鸿蒙应用开发

    《HarmonyOS第一课》焕新升级,赋能开发者快速掌握鸿蒙应用开发 随着HarmonyOS NEXT发布,鸿蒙生态日益壮大,广大开发者对于系统化学习平台和课程的需求愈发强烈。近日,华为精心打造
    发表于 01-02 14:24

    存储空间告急?NAS扩容一招搞定,轻松无忧!

    和vlog …… 这些点点滴滴 都是我们共同走过2024年的珍贵凭证 当硬盘的进度条渐渐变红 仿佛在向我们展示这年来满满的收获 但存储空间紧急告急怎么办? NAS扩容一招搞定 、阵列扩容 在不改变阵列模式,保证数据不被删除的
    的头像 发表于 12-24 16:35 1152次阅读
    存储空间告急?NAS扩容<b class='flag-5'>一招</b>搞定,轻松无忧!

    ADS1299在DAISY-CHAIN模式下只能配置第一个AD吗,那后面几个都是要怎么配置寄存器,都和第一个样吗?

    大家: 1ADS1299在DAISY-CHAIN 模式下只能配置第一个AD么,那后面几个都是要怎么配置寄存器,都和第一个样么? 2 手册上写了有关时钟配置的问题,ADS1299在
    发表于 12-20 06:47