组件

组件按照布局的要求依次排列,构成应用的页面。在声明式UI中,所有的页面都是由自定义组件构成,开发者可以根据自己的需求,选择合适的布局进行页面开发。

Page表示页面的根节点,Column/Row等元素为系统组件。针对不同的页面结构,ArkUI提供了不同的布局组件来帮助开发者实现对应布局的效果,例如Row用于实现线性布局。

一、垂直布局

在鸿蒙 ArkUI 声明式开发框架中,Column 组件是实现垂直布局的核心容器,主轴为垂直纵向,子组件会自上而下有序排列,是表单、个人信息页等页面的基础布局方案Huawei Developer。

开发者可通过space设置子组件间距,依靠justifyContent控制主轴对齐方式,搭配alignItems调整水平交叉轴位置,快速规整页面元素。

Column 布局支持多层嵌套使用,可与水平 Row 布局组合完成复杂页面搭建,同时layoutWeight属性能够实现子组件按比例分配剩余高度,适配不同尺寸设备。

二、水平布局

水平布局是界面元素沿 X 轴横向排列的布局方式,核心特点为元素左右依次排布,常用于导航栏、按钮组、选项卡、顶部标题栏等场景。布局时可灵活设置对齐方式,左对齐适合常规内容摆放,右对齐多用于功能按钮、登录头像,居中对齐适配标题与均分菜单。

布局支持均分分配宽度,将容器宽度等分给子组件,也可固定部分元素尺寸,剩余空间自适应填充。同时能设置元素间距,避免组件拥挤,搭配弹性布局可轻松实现两端对齐、穿插留白。水平布局适配移动端与桌面端,横向排列契合人左右阅读习惯,结构简洁直观,常与垂直布局嵌套使用,搭建完整页面框架,是 UI 设计最基础、使用率最高的布局模式。

三、相对布局

相对布局,是以某一个控件为参照物,来定位其余组件位置的布局方式,区别于线性布局的顺序排列,控件位置不固定,依靠彼此或父容器的相对关系摆放。可以设置控件位于参照控件的上方、下方、左侧、右侧,也能对齐参照物的顶边、底边、中线,或是紧贴父容器的左、右、上、下边缘。

它灵活性极强,能够轻松实现错落的界面排版,适合布局结构不规则、控件位置交错的页面,比如头像搭配文字、悬浮按钮、弹窗组件。缺点是层级复杂时容易出现控件重叠、定位错乱的问题,层级越多调试难度越大。实际开发中常和线性布局、水平布局嵌套使用,兼顾排版灵活度与结构规整性,是界面开发里常用的主流布局类型。

四、层叠布局

层叠布局也叫堆叠布局,核心特点是控件按照层级上下堆叠摆放,子组件默认以父容器左上角为原点进行定位,后添加的控件会覆盖在先添加组件的上方,如同一张张纸片叠放。开发者可以自由设置每个元素的坐标、对齐方式,随意摆放位置,轻松实现控件重叠效果。

常用来制作悬浮按钮、弹窗、提示气泡、头像蒙版、轮播遮罩、页面浮窗等效果,适配需要元素叠加的场景。优势是定位自由,能轻松完成多层视觉效果;弊端是层级过多容易遮挡关键内容,坐标设置不当极易出现控件错位。开发时一般配合相对布局、线性布局嵌套使用,把控层级顺序,合理控制边距与层级高低,兼顾美观与页面稳定性。

五、弹性布局

弹性布局(Flex)是当下最常用的自适应布局,可快速设定主轴为水平或垂直方向,灵活分配容器剩余空间。子元素能够自动伸缩、均分宽度,也可固定尺寸,空白区域自动留白,完美适配不同屏幕尺寸。它自带丰富对齐属性,主轴可左对齐、居中、两端对齐、分散均分,侧轴能顶部对齐、居中对齐、底部对齐,一键完成规整排版。

多用于导航栏、按钮组、表单、卡片列表等场景,解决传统布局留白不均、适配差的痛点。优点是代码简洁、响应性强,横竖方向切换简单;只需简单属性就能实现复杂排布,常用来优化水平、垂直布局。唯一需要注意合理设置收缩与扩张权重,防止元素挤压变形,是界面开发适配多端的核心布局方案。

不管是那种布局,他只能有一个根布局,可以在根布局里面嵌套其他布局

Logo

讨论HarmonyOS开发技术,专注于API与组件、DevEco Studio、测试、元服务和应用上架分发等。

更多推荐