Day2 鸿蒙,从“打工人”看代码建立布局

Day2 打工人.gif

上文档:git

HarmonyOS提供了Ability和AbilitySlice两个基础类。有界面的Ability绑定了系统的Window进行UI展现,且具备生命周期。AbilitySlice主要用于承载Ability的具体逻辑实现和界面UI,是应用显示、运行和跳转的最小单元。AbilitySlice经过setUIContent()为界面设置布局。github

组件须要进行组合,并添加到界面的布局中。在Java UI框架中,提供了两种编写布局的方式:框架

在代码中建立布局:用代码建立Component和ComponentContainer对象,为这些对象设置合适的布局参数和属性值,并将Component添加到ComponentContainer中,从而建立出完整界面。布局

在XML中声明UI布局:按层级结构来描述Component和ComponentContainer的关系,给组件节点设定合适的布局参数和属性值,代码中可直接加载生成此布局。对象

这一次为你们带来的就是“在代码中建立布局”。blog

涵盖核心知识点包括:(实战Demo源码地址:https://github.com/CoderMrYe/HarmonyStudy)生命周期

一、建立步骤:文档

(1)声明布局get

DirectionalLayout directionalLayout = new DirectionalLayout(getContext());源码

(2)设置布局大小

directionalLayout.setWidth(ComponentContainer.LayoutConfig.MATCH_PARENT); directionalLayout.setHeight(ComponentContainer.LayoutConfig.MATCH_PARENT);

(3)设置布局属性及ID(ID视须要设置便可)

directionalLayout.setOrientation(Component.VERTICAL); directionalLayout.setPadding(32, 32, 32, 32);

(4)组件建立

Text text = new Text(getContext()); //组件初始化 text.setText("???");//组件属性设置 text.setTextSize(50); text.setId(100);

(5)为组件添加对应布局的布局属性

DirectionalLayout.LayoutConfig layoutConfig = new DirectionalLayout.LayoutConfig(DirectionalLayout.LayoutConfig.MATCH_CONTENT, DirectionalLayout.LayoutConfig.MATCH_CONTENT); layoutConfig.alignment = LayoutAlignment.HORIZONTAL_CENTER; text.setLayoutConfig(layoutConfig);

(6)将组件添加到布局中(多个组件,重复步骤456)

directionalLayout.addComponent(text);

(7)将布局做为根布局添加到视图树中

super.setUIContent(directionalLayout);

本文由博客一文多发平台 OpenWrite 发布!

相关文章
相关标签/搜索