005、简单页面-容器组件

news/2024/7/21 10:30:10 标签: 鸿蒙系统, harmonyos, 鸿蒙

之——布局

目录

之——布局

杂谈

正文

1.布局基础知识

2.Column

3.Row

4.实践


杂谈

        布局容器组件。

        一个丰富的页面需要很多组件组成,那么,我们如何才能让这些组件有条不紊地在页面上布局呢?这就需要借助容器组件来实现。

        容器组件是一种比较特殊的组件,它可以包含其他的组件,而且按照一定的规律布局,帮助开发者生成精美的页面。容器组件除了放置基础组件外,也可以放置容器组件,通过多层布局的嵌套,可以布局出更丰富的页面。


正文

1.布局基础知识

        线性布局容器表示按照垂直方向或者水平方向排列子组件的容器,ArkTS提供了Column和Row容器来实现线性布局。

  • Column表示沿垂直方向布局的容器。
  • Row表示沿水平方向布局的容器。

        在布局容器中,默认存在两根轴,分别是主轴和交叉轴,这两个轴始终是相互垂直的。不同的容器中主轴的方向不一样的。

  • 主轴:在Column容器中的子组件是按照从上到下的垂直方向布局的,其主轴的方向是垂直方向;在Row容器中的组件是按照从左到右的水平方向布局的,其主轴的方向是水平方向。
  • 交叉轴:与主轴垂直相交的轴线,如果主轴是垂直方向,则交叉轴就是水平方向;如果主轴是水平方向,则交叉轴是垂直方向。

        不同的组件的主轴方向不一样。

        容器组件是可以使用入参space来设置子组件的间距:

        Column和Row有两个属性, 来设置布局在轴上的对齐:

        子组件在主轴方向上的对齐使用justifyContent属性来设置,其参数类型是FlexAlign。FlexAlign定义了以下几种类型: 

  • Start:元素在主轴方向首端对齐
  • Center:元素在主轴方向中心对齐
  • End:元素在主轴方向尾部对齐
  • SpaceBetween:元素在主轴方向均匀分配弹性元素,首尾没有间距
  • SpaceAround:元素在主轴方向均匀分配弹性元素,首尾一半间距
  • SpaceEvenly:元素在主轴方向等间距布局,首尾一样间距

        子组件在交叉轴方向上的对齐方式使用alignItems属性来设置。

        Column容器的主轴是垂直方向,交叉轴是水平方向,其参数类型为HorizontalAlign(水平对齐),HorizontalAlign定义了以下几种类型:

  • Start:设置子组件在水平方向上按照起始端对齐
  • Center(默认值):设置子组件在水平方向上居中对齐
  • End:设置子组件在水平方向上按照末端对齐

        Row容器的主轴是水平方向,交叉轴是垂直方向,其参数类型为VerticalAlign(垂直对齐),VerticalAlign定义了以下几种类型:

  • Top:设置子组件在垂直方向上居顶部对齐
  • Center(默认值):设置子组件在竖直方向上居中对齐
  • Bottom:设置子组件在竖直方向上居底部对齐


2.Column

        使用样例见下方Row中的图。


3.Row

        使用样例:


4.实践

常用组件与布局(ArkTS) (huawei.com)

相关概念

  • Text:显示一段文本的组件。

  • Image:Image为图片组件,常用于在应用中显示图片。Image支持加载string、PixelMap和Resource类型的数据源,支持png、jpg、bmp、svg和gif类型的图片格式。

  • TextInput:单行文本输入框组件。

  • Button:按钮组件,可快速创建不同样式的按钮。

  • LoadingProgress:用于显示加载动效的组件。

  • Flex:以弹性方式布局子组件的容器组件。

  • Column:沿垂直方向布局的容器。

  • Row:沿水平方向布局容器。

  • List:列表包含一系列相同宽度的列表项。适合连续、多行呈现同类数据,例如图片和文本。

  • Swiper:滑块视图容器,提供子组件滑动轮播显示的能力。

  • Grid:网格容器,由“行”和“列”分割的单元格所组成,通过指定“项目”所在的单元格做出各种各样的布局。


http://www.niftyadmin.cn/n/5234427.html

相关文章

20231202 VCSA 7.0 日志清理及空间扩容

日志清理 ssh 到 VCSA 上,输入 shell 进入控制台 df -lh 查看空间大小,发现 /storage/archive 占据空间比较大,这里应该是备份日志的地方,里边文件不大但很多,查找并删除 30 天以前的日志 cd /storage/archive/vpostgr…

Spring Boot统一异常处理 Spring拦截器

小编在前文中向大家描述了Spring AOP的相关内容:Spring AOP-CSDN博客感兴趣的各位老铁可查看一下!! 那么,我们本文主要是代理搭建来实现一个Spring Boot统一功能处理模块了,当然,这个也是Spring AOP的实战环…

Python遥感开发之批量镶嵌

Python遥感开发之批量镶嵌 1.ArcGis镶嵌2.Arcpy实现镶嵌2.1 Arcpy实现单个镶嵌2.2 Arcpy实现批量镶嵌 3.GDAL实现镶嵌 前言:主要介绍了遥感数据的镶嵌,其中包括使用ArcGis如何完成镶嵌,如何使用Arcpy和GDAL完成镶嵌。 1.ArcGis镶嵌 是ArcGis…

《软件工程原理与实践》复习总结与习题——软件工程

软件生命周期 软件生命周期分为三个时期、八个阶段 软件定义时期: 1)问题定义阶段:要解决什么问题 2)可行性研究阶段:确定软件开发可行 3)需求分析阶段:系统做什么 软件开发时期:…

LiteOS内存管理:TLSF算法

问题背景 TLSF算法主要是面向实时操作系统提出的,对于RTOS而言,执行时间的确定性是最根本的,然而传统的动态内存分配器(DMA,Dynamic Memory Allocator)存在两个主要问题: 最坏情况执行时间不确…

分享84个节日PPT,总有一款适合您

分享84个节日PPT,总有一款适合您 84个节日PPT下载链接:https://pan.baidu.com/s/1TSIGR8ZIytnTKmQRa0rGnw?pwd6666 提取码:6666 Python采集代码下载链接:采集代码.zip - 蓝奏云 学习知识费力气,收集整理更不易…

常见的Java面试题30题附答案

以下是一些常见的Java面试题和答案: 1. Java中的基本数据类型有哪些? 答案:Java中的基本数据类型有8个,分别是int、char、boolean、long、float、double、byte和short。 2. 请解释一下什么是Java中的对象? 答案&#x…

常用数据预处理方法 python

常用数据预处理方法 数据清洗缺失值处理示例删除缺失值插值法填充缺失值 异常值处理示例删除异常值替换异常值 数据类型转换示例数据类型转换在数据清洗过程中非常常见 重复值处理示例处理重复值是数据清洗的重要步骤 数据转换示例 数据集成示例数据集成是将多个数据源合并为一…