当前位置: 首页 > news >正文

Harmony OS 开发入门 第四章

本章我们来讲述ArlUI 中的线性布局

目录

线性布局

排布主方向上的对齐方式(主轴)

交叉轴对齐方式

自适应伸缩


线性布局

线性布局(LinearLayout)通过线性容器Column和Row创建

Column 容器:子元素 垂直排列

Row 容器:子元素 水平排列

排布主方向上的对齐方式(主轴)

.justifyContent(枚举FlexAlign)

FlexAlign 可选值:

    1.Start

        子组件从主轴起点开始排列(默认值)。

        若主轴方向为 row,则从左到右;若为 column,则从上到下。

    2.Center

        子组件在主轴上居中对齐。

    3.End

        子组件向主轴终点对齐。

        若主轴为 row,则从右到左;若为 column,则从下到上。

    4.SpaceBetween

        子组件均匀分布,首个组件在起点,末尾组件在终点,中间组件间距相等。

    5.SpaceAround

        子组件均匀分布,每个组件两侧的间距相等(视觉效果为左右间距是中间间距的一半)。

    6.SpaceEvenly

        子组件完全均匀分布,包括两端与容器之间的间距也等于组件间间距。

练习

代码如下:

@Entry
@Component
struct Index {build() {Column(){Row(){Image($r("app.media.ic_arrow_left")).width(21)Text('个人中心')Image($r("app.media.ic_gallery_photoedit_more")).width(24)}.justifyContent(FlexAlign.SpaceBetween).width('100%').height(40).backgroundColor(Color.White).padding({left:10,right:10})}.width('100%').height('100%').backgroundColor('#ccc')}
}

交叉轴对齐方式

属性:alignItems()

参数:枚举类型

交叉轴在水平方向:HorizontalAlign

交叉轴在垂直方向:VerticalAlign

自适应伸缩

设置 layoutWeight 属性的 子元素 与 兄弟元素,会 按照权重 进行分配 主轴 空间(剩余空间)

.layoutWeight(数字)

@Entry
@Component
struct Index {build() {Column(){Row(){Text().layoutWeight(1).height('100%').backgroundColor(Color.Red)Text().layoutWeight(1).height('100%').backgroundColor(Color.Yellow)Text().layoutWeight(1).height('100%').backgroundColor(Color.Green)}.width('100%').layoutWeight(3)Column(){Text().layoutWeight(1).width('100%').backgroundColor(Color.Brown)Text().layoutWeight(1).width('100%').backgroundColor(Color.Gray)Text().layoutWeight(1).width('100%').backgroundColor(Color.Orange)}.width('100%').layoutWeight(1)}.width('100%').height('100%')}
}

http://www.dtcms.com/a/335105.html

相关文章:

  • C# 反射和特性(关于应用特性的更多内容)
  • 022 基础 IO —— 文件
  • 服务器硬件电路设计之I2C问答(七):解析 I2C 通信 “卡壳” 难题:从设备无响应与跨电压兼容之道
  • Apache Hudi:数据湖的实时革命
  • 【每日一题】Day5
  • 一键检测接口是否存活:用 Python/Shell 写个轻量级监控脚本
  • 后量子密码算法ML-KEM介绍及开源代码实现
  • 数据结构:二叉平衡树
  • ROS move_base 混合功能导航 RealSense D435i + 3D 点云地图 + 楼层切换 + 路径录制 + 路径规划
  • 微服务的编程测评系统12-xxl-job-历史竞赛-竞赛报名
  • C++ 力扣 1658.将 x 减到 0 的最小操作数 题解 优选算法 滑动窗口 (同向双指针)优化 每日一题 详细题解
  • 免费万能电子书格式转换器!Neat Converter支持 ePub、Azw3、Mobi、Doc、PDF、TXT 文件的相互转换。
  • 两个简单的设计模式的例子
  • FP16(半精度)和FP32(单精度)
  • CentOS7安装使用FTP服务
  • 产品设计.原型设计
  • TexStudio中的Latex,PDFLatex,XeLatex和LuaLatex的区别
  • vue优化有哪些手段?
  • ubuntu网络共享
  • 深度解析和鲸社区热门项目:电商双 11 美妆数据分析的细节与价值
  • ubuntu远程桌面很卡怎么解决?
  • [Linux] Linux系统负载监控 Linux服务管理
  • Java Stream sort算子实现:SortedOps
  • 网络层(1)
  • DeepResearch开源与闭源方案对比
  • autofit.js: 自动调整HTML元素大小的JavaScript库
  • 小智-ESP32的MQTT协议
  • linux设备驱动之字符设备驱动
  • Python-Pandas基础
  • 主从复制+哨兵