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

容器组件-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 })
  }
}

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

vuerouter声明式导航

声明式导航-跳转传参数 1.查询参数传参 语法:to /path?参数名值 2.对应页面组件接受传来的值 $router.query.参数名 2.动态路由传参 1.配置动态路由 2.配置导航连接 to/path/参数值 3.对应页面组件接收传递过来的值 #route.params.参数名 多个参数传递&…

Linux —— 线程

Linux —— 线程 什么是线程Linux如何实现线程Winodws如何实现线程使用一下线程pthread_create函数原型参数说明返回值 如何解决 ps -aL 查看线程线程为什么轻量 我们今天进入线程的学习: 什么是线程 我们先来了解一个笼统的概念:简单来说,…

如何利用代理IP高效采集全球热点,赋能短视频创作?

如何利用代理IP高效采集全球热点,赋能短视频创作? 一、摘要二、代理IP1. 什么是代理IP?2. 代理IP的分类3. 代理的重要性 三、如何选择可靠的代理IP服务商?四、IPIDEA代理IP简介1.IPIDEA简介2.IPIDEA的优势 五、获取代理IP1. 注册平…

618平价好物哪些比较值得入手?2024年618平价好物选购清单

距离下一次大型促销活动618仅有一个半月的时间了,相信许多人已经开始为购物清单做准备了。在这个充满诱惑的购物季,你是否已经找到了那些让你心动的好物呢?今天,我想和大家分享一下我之前购买并使用过的一些优质商品,它…

【软件安装】vmware虚拟机安装完整教程(15.5版本)

安装包-百度网盘: 链接:https://pan.baidu.com/s/1zwYeRVdp1TM75JIctkWqVA?pwd6666 提取码:6666 1、去BIOS里修改设置开启虚拟化设备支持(这一步必须要进行) 网址:https://jingyan.baidu.com/article…

驱动丹佛斯比例电磁铁放大器

驱动丹佛斯比例电磁铁是一种用于实现对液压系统连续且精确控制的通电带磁性装置。比例阀由直流比例电磁铁和液压阀两部分组成。其中,比例电磁铁是其核心部件,负责将输入的电信号转换成力和位移输出,从而控制液压阀的工作状态。比例电磁铁通过…

ROS2安装

实习上班就是摸鱼!学习一下ROS2吧 由于ROS存在较多的不足,所以转战ROS2了,最主要的区别在于在ROS2中,将ROS中的主节点给去掉了 http://fishros.com/d2lros2/#/humble/chapt1/get_started/2.ROS%E4%B8%8EROS2%E5%AF%B9%E6%AF%94…

2024最新独立版校园跑腿校园社区小程序源码+附教程 适合跑腿,外卖,表白,二手,快递等校园服务

内容目录 一、详细介绍二、效果展示1.部分代码2.效果图展示 三、学习资料下载 一、详细介绍 后台php,前端uniapp可以二次开 2024最新独立版校园跑腿校园社区小程序源码附教程 测试环境:NginxPHP7.2MySQL5.6 多校版本,多模块,适…

果园游戏功能介绍

果园游戏通常围绕种植、管理、收获果实以及与朋友互动等元素设计。以下是果园游戏可能具备的一些功能介绍: 植物种植和养护: 玩家可以选择种植各种水果或植物,每种植物都有自己的生长周期和特点。需要定期给植物浇水、施肥、除草、除虫等&am…

可道云teamOS企业网盘实用插件介绍:实时在线流程图编辑与分享,用在线流程图打造数字化工作流程

在使用企业网盘用于日常办公的情况下,有一些实用的在线小工具能为团队效率和协作带来一定的提升。 今天要给大家介绍的可道云teamOS的在线画流程图,是很值得介绍的一个在线工具。 在线流程图:直观展示,高效便捷 以往我们想要梳理…

面试中算法(金矿)

有一位国王拥有5座金矿,每座金矿的黄金储量不同,需要参与挖掘的工人人数也不同。 例如,有的金矿储量是5ookg黄金,需要5个工人来挖掘;有的金矿储量是2ookg黄金,需要3个工人来挖掘...... 如果参与挖矿的工人的总数是10。…

Linux部署

先把需要的东西准备好: 第一步解压tomcat: tar -zxvf apache-tomcat-8.5.20.tar.gz 第二步解压jdk: tar -zxvf jdk-8u151-linux-x64.tar.gz 第三步配置Java环境变量: vim /etc/profile 把下面代码放进去: export JAVA_HOME/root…

红队攻防|拿下服务器root权限

0x00前言 分享一个简单的项目,小有坎坷但仍旧几乎畅通无阻的最终拿下root权限。 先说重要的事情: 如有漏码少码导致能定位目标请各位师傅手下留情,后台留言提醒必有红包重谢! 0x01信息收集 过程略,收集到目标的主站…

java基础之面向对象的思想

一、面向对象和面向过程的编程思想对比 面向过程:是一种以过程为中心的编程思想,实现功能的每一步,都是自己实现的(自己干活)。 面向对象:是一种以对象为中心的编程思想,通过指挥对象实现具体的…

ue5地编模块学习记录

ue5网站功能3d溜溜网下载模型https://anyconv.com/max-to-fbx-converter/3dmax转换fbx模型解决问题记录 一、光源 搜索光源搜索不到的时候可以点击 窗口> 对场景内的光照进行处理 二、认识节点 在UE5中,Depth Fade节点通常用于在材质中实现深度淡化效果&#…

【linux系统学习教程 Day02】网络安全之Linux系统学习教程,管道,文件内容统计,过滤排序,去重,目录介绍

1-4 管道 管道符号: | ,可以将前面指令的执行结果,作为后面指令的操作内容。 ## 比如过滤ip地址 ip addr | tail -4 | head -1 解释一下就是先执行 ip addr ,得到的结果当做 tail -4 的输入,意思就是查看ip addr 结果的后四行内容…

jmeter报错:class‘org.apache.jmeter.threads.JMeterVariables‘

最近项目被爬虫盯上了,导致生产环境崩溃了几次,又开始哼哧哼哧做压测,性能调优。totalPrices 是一个价格数组,以下这种格式的: {“USD”:2049.01,“CNY”:110} 一开始是下面这种写法,直接把这个JSONObject类型的放到va…

【云原生】kubernetes核心组件

引言: Kubernetes 是为运行分布式集群而建立的,分布式系统的本质使得网络成为 Kubernetes 的核心和必要组成部分,了解 Kubernetes 网络模型可以使你能够正确运行、监控和排查应用程序故障。 一、Kubernetes的核心组件 1.1、Master组件 1.1.…

GLU(Gated Linear Unit) 门控线性单元

文章目录 一、RNN二、GLU2.1 整体结构2.2 输入层(Input SentenceLookup Table)2.3 中间层(ConvolutionGate)2.4 输出层(Softmax)2.5 实验结果2.6 实现代码 三、RNN与GLU的对比参考资料 GLU可以理解为能够并行处理时序数据的CNN网络架构,即利用CNN及门控机制实现了RN…

el-menu 保持展开点击不收缩 默认选择第一个菜单

<el-menu:default-openeds"[/system]" 数组 默认展开第一个:collapse"isCollapse"close"handleClose" 点击关闭的时候 让菜单打开 就可以实现保持展开效果ref"menus":unique-opened"true":active-text-color"se…