容器组件:Column ,Row(HarmonyOS学习第四课【4.1】)

news2024/11/26 2:42:11

容器组件-Column 

Column 容器组件是沿垂直方向布局的容器。该组件从APIVersion7开始支持从API version 9开始,该接口支持在ArkTs,卡片中使用。其可以包含子组件

Column(value?: {space?: string | number})

参数

space

参数类型string | number 是否必填:否 功能描述:纵向布局元素垂直方向间距。 从API version 9开始,space为负数 或者justifyContent设置为FlexAlign.SpaceBetween、FlexAlign.SpaceAround、FlexAlign.SpaceEvenly时不生效。 默认值:0 说明: 可选值为大于等于0的数字,或者可以转换为数字的字符串。

除支持通用属性外,还支持以下属性:

alignItems

参数类型: HorizontalAlign 描述: 用于设置子组件在水平方向上的对齐方式。默认情况下,子组件会在水平居中对齐。从API版本9开始,这个参数支持在ArkTS卡片中使用。

justifyContent

参数类型: FlexAlign 描述: 用于设置子组件在垂直方向上的对齐方式。默认情况下,子组件会在垂直方向上从顶部对齐。从API版本9开始,这个参数支持在ArkTS卡片中使用。 这些参数用于布局控制,让你可以指定子组件在容器中的对齐方式,以便更好地控制界面布局。

@Entry
@Component //使用 Component 装饰器定义 个新组件。
struct ColumnExample { //定义名为 ColumnExample 的结构体,代表这个组件
  build() {  //定义 bulid 方法来构建UI
    Column({ space: 5 }) {  //创建一个Column组件 设置子元素之间垂直间距为5
      // 设置子元素垂直方向间距为5
      Text('space').width('90%')  //创建一个Text 组件,说明按下来的内容与space属性相关。
      Column({ space: 5 }) {  //创建一个内部 Column 组件,再次设置子元素间的重直间距为5
        Column().width('100%').height(30).backgroundColor(0xAFEEEE) //创建一个 Column 子组件,设置宽度、高度和背景颜色为浅蓝色。
        Column().width('100%').height(30).backgroundColor(0x00FFFF) //创建一个 Column 子组件,设置宽度、高度和背景颜色为青色。
      }.width('90%').height(100).border({ width: 1 })  //为这个内部为Column设置宽度 高度 和边框

      // 设置子元素水平方向对齐方式
      Text('alignItems(Start)').width('90%')  //创建一个 Text 组件,说明按下来的内容与水平起始对齐相关。
      Column() {  //创建一个Column组件
        Column().width('50%').height(30).backgroundColor(0xAFEEEE)
        Column().width('50%').height(30).backgroundColor(0x00FFFF)
      }.alignItems(HorizontalAlign.Start).width('90%').border({ width: 1 })//为这个 Column 设置子元素水平起始对齐、宽度和边框。

      Text('alignItems(End)').width('90%')
      Column() {
        Column().width('50%').height(30).backgroundColor(0xAFEEEE)
        Column().width('50%').height(30).backgroundColor(0x00FFFF)
      }.alignItems(HorizontalAlign.End).width('90%').border({ width: 1 })//为这个 Column 设置子元素水平结尾对齐、宽度和边框。

      Text('alignItems(Center)').width('90%')//创建一个Text 组件,说明按下来的内容与结束对齐相关
      Column() {
        Column().width('50%').height(30).backgroundColor(0xAFEEEE)
        Column().width('50%').height(30).backgroundColor(0x00FFFF)
      }.alignItems(HorizontalAlign.Center).width('90%').border({ width: 1 })//为这个 Column 设置子元素居中对齐、宽度和边框。

      // 设置子元素垂直方向的对齐方式
      Text('justifyContent(Center)').width('90%')
      Column() {
        Column().width('90%').height(30).backgroundColor(0xAFEEEE)
        Column().width('90%').height(30).backgroundColor(0x00FFFF)
      }.height(100).border({ width: 1 }).justifyContent(FlexAlign.Center)//为这个 Column 设置子元垂直中对齐、宽度和边框

      Text('justifyContent(End)').width('90%')
      Column() {
        Column().width('90%').height(30).backgroundColor(0xAFEEEE)
        Column().width('90%').height(30).backgroundColor(0x00FFFF)
      }.height(100).border({ width: 1 }).justifyContent(FlexAlign.End)//为这个 Column 设置子元素居下对齐、宽度和边框
    }.width('100%').padding({ top: 5 })
  }
}

容器组件-Row

Row容器组件是沿水平方同布局容器。 该组件从 APIVersion 7开始支持,从API version 9开始,该接口支持在ArkTS,卡片中使用。可以包含子组件。

使用方法:

Row(value?:{space?:numder | string})

alignItems

参数类型:VerticalAlign 描述: 用于设置子组件在垂直方向上的对齐方式。默认情况下,子组件会在垂直居中对齐。从API版本9开始,这个参数支持在ArkTS卡片中使用。

justifyContent

参数类型: FlexAlign 描述: 用于设置子组件在水平方向上的对齐方式。默认情况下,子组件会在水平方向上从顶部对齐。从API版本9开始,这个参数支持在ArkTS卡片中使用。 这些参数用于布局控制,让你可以指定子组件在容器中的对齐方式,以便更好地控制界面布局。

代码示例:

@Entry
@Component //使用 Component 装饰器定义 个新组件。
struct ColumnExample { //定义名为 ColumnExample 的结构体,代表这个组件
  build() {  //定义 bulid 方法来构建UI
    Column({ space: 5 }) {  //创建一个Column组件 设置子元素之间垂直间距为5
      // 设置子元素垂直方向间距为5
      Text('space').width('90%')  //创建一个Text 组件,说明按下来的内容与space属性相关。
      Row({ space: 5 }) {  //创建一个内部 Column 组件,再次设置子元素间的重直间距为5
        Row().width('30%').height(50).backgroundColor(0xAFEEEE) //创建一个 Column 子组件,设置宽度、高度和背景颜色为浅蓝色。
        Row().width('30%').height(50).backgroundColor(0x00FFFF) //创建一个 Column 子组件,设置宽度、高度和背景颜色为青色。
      }.width('90%').height(107).border({ width: 1 })  //为这个内部为Column设置宽度 高度 和边框

      // 设置子元素水平方向对齐方式
      Text('alignItems(Start)').width('90%')  //创建一个 Text 组件,说明按下来的内容与水平起始对齐相关。
      Row() {  //创建一个Column组件
        Row().width('30%').height(50).backgroundColor(0xAFEEEE)
        Row().width('30%').height(50).backgroundColor(0x00FFFF)
      }.width('90%').alignItems(VerticalAlign.Top).height('15%').border({ width: 1 })//为这个 Column 设置子元素水平顶部对齐、宽度和边框。

      Text('alignItems(End)').width('90%')
      Row() {
        Row().width('30%').height(50).backgroundColor(0xAFEEEE)
        Row().width('30%').height(50).backgroundColor(0x00FFFF)
      }.width('90%').alignItems(VerticalAlign.Bottom).height('15%').border({ width: 1 })//为这个 Column 设置子元素水平底部对齐、宽度和边框。

      Text('alignItems(Center)').width('90%')//创建一个Text 组件,说明按下来的内容与结束对齐相关
      Row() {
        Row().width('30%').height(50).backgroundColor(0xAFEEEE)
        Row().width('30%').height(50).backgroundColor(0x00FFFF)
      }.width('90%').alignItems(VerticalAlign.Center).height('15%').border({ width: 1 })//为这个 Column 设置子元素居中对齐、宽度和边框。

      // 设置子元素垂直方向的对齐方式
      Text('justifyContent(Center)').width('90%')
      Row() {
        Row().width('30%').height(50).backgroundColor(0xAFEEEE)
        Row().width('30%').height(50).backgroundColor(0x00FFFF)
      }.width('90%').height(100).border({ width: 1 }).justifyContent(FlexAlign.Center)//为这个 Column 设置子元垂直中对齐、宽度和边框

      Text('justifyContent(End)').width('90%')
      Row() {
        Row().width('90%').height(30).backgroundColor(0xAFEEEE)
        Row().width('90%').height(30).backgroundColor(0x00FFFF)
      }.height(100).border({ width: 1 }).justifyContent(FlexAlign.End)//为这个 Column 设置子元素居下对齐、宽度和边框
    }.width('100%').padding({ top: 5 })
  }
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1669407.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

锁策略详解:互斥锁、读写锁、乐观锁与悲观锁、轻量级锁与重量级锁、自旋锁、偏向锁、可重入锁与不可重入锁、公平锁与非公平锁

一.锁策略 锁策略指的是在多线程编程中用于管理共享资源访问的规则和技术。它们确保在任何给定时间只有一个线程可以访问共享资源,以防止竞态条件和数据不一致性问题。常见的锁策略包括: 互斥锁(Mutex):最常见的锁类型…

WPS表格:对比少于1万的两列数据

当我们需要对于A、B两列乱序的数据,找出A列中某一项B列有没有,或者找出B列中的某一项A列有没有,都可以先将这两列数据放入WPS表格中: 1.选中C列的第一行的单元格,在函数区输入函数 如果我们以A为基准,找A中…

项目分享|基于ELF 1S开发板完成的物联网开源项目

ElfBoard作为飞凌嵌入式旗下教育品牌,自成立以来,持续吸引着各界的瞩目,其中也赢得了一些工程师的青睐。今天,就和各位小伙伴分享一位杰出工程师借助ELF 1S开发板完成的嵌入式物联网项目,见证智慧与技术的火花。 关于…

二、计算机基础(Java零基础二)

🌻🌻目录 一、认识计算机二、计算机的组成2.1 计算机硬件(摸得着,看得见)2.1.1 计算机硬件组成2.1.2 冯.诺依曼(计算机之父)体系结构 2.2 计算机软件(摸不着,看不见) 三、电脑常用快…

LVDS 源同步接口

传统数据传输通常采用系统同步传输方式,多个器件基于同一时钟源进行系统同步,器件之间的数据传输时序关系以系统时钟为参考,如图1所示。系统同步传输方式使各器件处于同步工作模式,但器件之间传输数据的传输时延难以确定&#xff…

Remix 集成 MUI

Remix 如何接入 MUI 组件库,MUI 官网提供了一个 Remix 接入 MUI 的例子,用的是老的 Remix版本,如何接入新的 Vite 版本呢? 由于 MUI 支持 SSR,只需要改造对应的 Client 和 Server 即可实现。安装 MUI 组件组件库&…

实现字符串复制(C语言)

一、N-S流程图&#xff1b; 二、运行结果&#xff1b; 三、源代码&#xff1b; # define _CRT_SECURE_NO_WARNINGS # include <stdio.h>int main() {//初始化变量值&#xff1b;int i 0;char a[100], b[100];//获取字符串&#xff1b;printf("请为数组a输入字符串…

如何在外网访问内网共享文件?

在日常工作和生活中&#xff0c;我们经常会遇到外网访问内网共享文件的需求。我们可能需要远程访问公司内部的共享文件夹&#xff0c;或者与不同地区的合作伙伴共享文件。由于网络安全的限制&#xff0c;外网访问内网的共享文件并不是一件容易的事情。 为了解决这个问题&#x…

java项目之车辆管理系统(springboot+vue+mysql)

风定落花生&#xff0c;歌声逐流水&#xff0c;大家好我是风歌&#xff0c;混迹在java圈的辛苦码农。今天要和大家聊的是一款基于springboot的车辆管理系统。项目源码以及部署相关请联系风歌&#xff0c;文末附上联系信息 。 项目简介&#xff1a; 车辆管理系统的主要使用者分…

Python 旋转立方体

文章目录 效果图运行环境完整代码实现思路1. 导入库和定义常量2. 创建Cube类3. 实现Cube类的draw方法4. 实现主函数 效果图 运行环境 python版本&#xff1a;python3.x 依赖包&#xff1a; $ pip install pygame $ pip install numpy完整代码 import numpy as np # 导入 N…

【YOLOv8模型网络结构图理解】

YOLOv8模型网络结构图理解 1 YOLOv8的yaml配置文件2 YOLOv8网络结构2.1 Conv2.2 C3与C2f2.3 SPPF2.4 Upsample2.5 Detect层 1 YOLOv8的yaml配置文件 YOLOv8的配置文件定义了模型的关键参数和结构&#xff0c;包括类别数、模型尺寸、骨干&#xff08;backbone&#xff09;和头部…

单调栈问题

原理 单调栈的核心原理是&#xff1a;在栈内保持元素的单调性&#xff08;递增或递减&#xff09; 单调递增栈&#xff1a; 用于处理“下一个更小的元素”问题。当新元素比栈顶元素小或等于时&#xff0c;直接入栈&#xff1b;否则&#xff0c;一直从栈顶弹出元素&#xff0c…

会声会影2024中文汉化补丁器附免费激活码序列号

会声会影是一款由加拿大Corel公司发布的视频编辑软件&#xff0c;它以其功能丰富和用户友好的界面而闻名。会声会影2024是该系列的最新版本&#xff0c;它不仅继承了之前版本的强大功能&#xff0c;还引入了一系列新的特性和工具&#xff0c;使得视频编辑更加简单、高效且富有创…

【简单讲解下Fine-tuning BERT】

&#x1f3a5;博主&#xff1a;程序员不想YY啊 &#x1f4ab;CSDN优质创作者&#xff0c;CSDN实力新星&#xff0c;CSDN博客专家 &#x1f917;点赞&#x1f388;收藏⭐再看&#x1f4ab;养成习惯 ✨希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出…

【图解计算机网络】TCP 重传、滑动窗口、流量控制、拥塞控制

TCP 重传、滑动窗口、流量控制、拥塞控制 TCP 重传超时重传快速重传 滑动窗口流量控制拥塞控制慢启动拥塞避免拥塞发生快速恢复 TCP 重传 TCP重传是当发送的报文发生丢失的时候&#xff0c;重新发送丢失报文的一种机制&#xff0c;它是保证TCP协议可靠性的一种机制。 TCP重传…

【Oracle篇】rman物理备份工具的基础理论概述(第一篇,总共八篇)

☘️博主介绍☘️&#xff1a; ✨又是一天没白过&#xff0c;我是奈斯&#xff0c;DBA一名✨ ✌✌️擅长Oracle、MySQL、SQLserver、阿里云AnalyticDB for MySQL(分布式数据仓库)、Linux&#xff0c;也在扩展大数据方向的知识面✌✌️ ❣️❣️❣️大佬们都喜欢静静的看文章&am…

试衣不再有界:Tunnel Try-on开启视频试衣应用新纪元

论文&#xff1a;https://arxiv.org/pdf/2404.17571 主页&#xff1a;https://mengtingchen.github.io/tunnel-try-on-page/ 一、摘要总结 随着虚拟试衣技术的发展&#xff0c;消费者和时尚行业对于能够在视频中实现高质量虚拟试衣的需求日益增长。这项技术允许用户在不实际穿…

云计算十三课

centos安装 点击左上角文件 点击新建虚拟机 点击下一步 点击稍后安装操作系统&#xff0c;下一步 选择Linux&#xff08;l&#xff09;下一步 设置虚拟机名称 点击浏览选择安装位置 新建文件夹设置名称不能为中文&#xff0c;点击确定 点击下一步 设置磁盘大小点击下一步…

修改MTU值解决Linux下运行top命令卡死问题

上周明月的Linux服务器上运行top命令总是莫名的出现卡死现象&#xff0c;甚至是CtrlC都无法终止进程&#xff0c;今天终于抽空找到了解决办法&#xff0c;原来是需要修改Linux的MTU值&#xff0c;将服务器操作系统数据包调小&#xff0c;加上VxLAN数据包小于1500即可。 top命令…

HCIP【BGP综合实验】

目录 一、实验拓扑图&#xff1a; 二、实验要求&#xff1a; 三、实验思路&#xff1a; 四、实验步骤&#xff1a; 1、进行网段的子网划分&#xff08;整个实验总共有19条网段&#xff09;&#xff1a; (1)首先&#xff0c;根据实验要求&#xff0c;将172.16.0.0/16全部划…