首页 > 其他分享 >鸿蒙应用开发笔记[2]-简单界面布局

鸿蒙应用开发笔记[2]-简单界面布局

时间:2023-12-03 17:34:31浏览次数:46  
标签:24 10 界面 鸿蒙 default app float 笔记 message

摘要

在HarmonyOS4开发一个应用,在ArkTS的Stage开发范式下简单进行界面布局.

平台信息

  • DevEco Studio 4.0 Release 构建版本:4.0.0.600, built on October 17, 2023
  • HarmonyOS 4
  • Compile SDK “3.1.0(API 9)”

原理简介

ArtTS的Stage开发框架

[https://developer.harmonyos.com/cn/docs/documentation/doc-guides-V3/start-with-ets-stage-0000001477980905-V3]

  • AppScope > app.json5:应用的全局配置信息。
  • entry:HarmonyOS工程模块,编译构建生成一个HAP包。
  • src > main > ets:用于存放ArkTS源码。
  • src > main > ets > entryability:应用/服务的入口。
  • src > main > ets > pages:应用/服务包含的页面。
  • src > main > resources:用于存放应用/服务所用到的资源文件,如图形、多媒体、字符串、布局文件等。关于资源文件,详见资源分类与访问。
  • src > main > module.json5:Stage模型模块配置文件。主要包含HAP包的配置信息、应用/服务在具体设备上的配置信息以及应用/服务的全局配置信息。具体的配置文件说明,详见module.json5配置文件。
  • build-profile.json5:当前的模块信息、编译信息配置项,包括buildOption、targets配置等。其中targets中可配置当前运行环境,默认为HarmonyOS。
  • hvigorfile.ts:模块级编译构建任务脚本,开发者可以自定义相关任务和代码实现。
  • oh_modules:用于存放三方库依赖信息。关于原npm工程适配ohpm操作,请参考历史工程迁移。
  • build-profile.json5:应用级配置信息,包括签名、产品配置等。
  • hvigorfile.ts:应用级编译构建任务脚本。

界面布局方式

[https://developer.harmonyos.com/cn/docs/documentation/doc-guides-V3/arkts-layout-development-overview-0000001450866508-V3]
声明式UI提供了以下8种常见布局,开发者可根据实际应用场景选择合适的布局进行页面开发。

布局类型 描述 使用场景
线性布局(Row、Column) 子元素超过1个且能线性排列时优先考虑此布局 需要线性排列的布局场景
层叠布局(Stack) 组件需要堆叠效果时优先考虑此布局,不影响其他子组件布局空间 需要组件堆叠效果的场景,如弹出Panel覆盖其他组件
弹性布局(Flex) 子组件需要计算拉伸或压缩比例时优先使用此布局,实现更好的视觉填充效果 需要子组件拉伸或压缩的场景
相对布局(RelativeContainer) 二维空间中的自由布局方式,通过设置锚点规则对齐子组件位置 页面元素分布复杂或需要避免深层嵌套的场景
栅格布局(GridRow、GridCol) 将空间分割为有规律的栅格,实现不同设备下的不同布局,降低适配成本 手机、大屏、平板等不同设备上的多场景布局需求
媒体查询(@ohos.mediaquery) 根据不同设备类型或状态修改应用样式,屏幕动态改变时更新页面布局 需要根据设备和应用属性信息设计不同布局的场景
列表(List) 显示结构化、可滚动的信息,具有垂直和水平布局能力和自适应排列个数的布局能力 用于呈现同类数据类型或数据类型集的场景,如图片和文本列表
网格(Grid) 具有页面均分能力、子组件占比控制能力,是一种重要的自适应布局方式 需要按照固定比例或均匀分配空间的布局场景,如计算器、相册、日历等
轮播(Swiper) 实现广告轮播、图片预览、可滚动应用等功能的组件 广告轮播、图片预览等需要滚动的场景

实现

主要代码

Index.ets
默认页面固定为Index.ets,不能修改名称.

@Entry
@Component
struct Index {
  // 智能体问候消息
  @State agent_greet_message: string = "晚上好!天气转凉,出门记得添衣哦

标签:24,10,界面,鸿蒙,default,app,float,笔记,message
From: https://www.cnblogs.com/qsbye/p/17873453.html

相关文章

  • 《信息安全系统设计与实现》第十三周学习笔记
      第十四章MYSQL实践mysql简介MySQL是一个开源数据库管理系统,由服务器和客户机组成。在将客户机连接到服务器后,用户可向服务器输入SQL命令,以便创建数据库,删除数据库,存储、组织和检索数据库中的数据。MySQL有广泛的应用。mysql安装在ubuntu中使用sudoaptinstallmysql-......
  • EMQX开发笔记
    目录开源版下载访问EMQXDashboard开源版下载#下载wgethttps://www.emqx.com/zh/downloads/broker/5.3.2/emqx-5.3.2-ubuntu22.04-amd64.deb#安装sudoaptinstall./emqx-5.3.2-ubuntu22.04-amd64.deb#运行sudoaptinstall./emqx-5.3.2-ubuntu22.04-amd64.deb......
  • 前缀和/差分——acwing算法基础课笔记
    个人笔记,欢迎补充,指正。一维前缀和对于数组:a[1],a[2],a[3]...a[n];其前缀和数组为s[i]=a[1]+a[2]+...+a[i];下标必须从1开始求前缀和1for(inti=1;i<n;++i)2s[i]=s[i-1]+a[i];s[0]需要定义为0作用求原数组里一段数(l,r)的和......
  • 学习笔记12
    《Unix/Linux系统编程》第14章学习笔记本章重点:MySQL关系数据库系统;MySQL;如何在Linux机器上安装和运行MySQL;如何使用MySQL在命令模式和批处理模式下使用SQL脚本创建和管理数据库;如何将MySQL与C编程相结合;如何将MySQL与PHP集成,通过动态Web页面创建和管理数据库。MySQL简介MySQL......
  • 商用密码行业发展讲座——学习笔记
    商用密码的产业发展及应用创新引领“第一”全力推动各行各业创新变革数字保单、电子病历等数字化转型领域是商用密码产业的重要驱动力。密码技术在这些领域的应用创新有望推动各行各业实现更高水平的数字化转型。商用密码产业发展现状产业生态商用密码产业基本定义为采用特......
  • 学c笔记归纳 第三篇——常量
    C语言中常量:常量表示固定的数据。字面常量 “a”const修饰的常变量 本质还是变量,但是不能直接修改,拥有了常量属性#define定义的标识符常量 #defineMAX10枚举常量 一一列举,不常用    主要注意const修饰的常变量在编译器输入以下代码:#includ......
  • 学习笔记4:JavaSE & API(集合)
    1、集合综述(1)定义:集合与数组一样,可以保存一组元素,并且提供了操作元素的相关方法,使用更方便。(2)java集合框架中相关接口java.util.Collection接口:所有集合的顶级接口。Collection下面有多种实现类,因此我们有更多的数据结构可供选择。java.util.List:线性表。是可重复集合,并且有......
  • Jquery - 学习笔记
    1.Jquery的下载与安装1.1下载https://jquery.com/1.2安装<!doctypehtml><htmllang="zh/cn"><head><metacharset="UTF-8"><title>jquerylearn</title></head><body><!--引入jquery-->&......
  • 学c笔记归纳 第二篇——基本数据类型
    基本数据类型告诉编译器,变量是什么类型,不同类型占内存大小不同,单位:字节char字符型 1short短整型2int整型  4long长整型 4longlong更长的整型 ......
  • 计算几何学习笔记
    叉乘(叉积)定义(二维):\[\vec{p_1}\times\vec{p_2}=x_1y_2-x_2y_1=-\vec{p_2}\times\vec{p_1}\]性质:若\(\vec{p_2}\)在\(\vec{p_1}\)的逆时针方向,则结果大于0。若\(\vec{p_2}\)在\(\vec{p_1}\)的顺时针方向,则结果小于0。若\(\vec{p_2}\)与\(\vec{p_1}\)共线,......