美文网首页
Day2 鸿蒙,从“打工人”看代码创建布局

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

作者: 程序员小小叶 | 来源:发表于2020-12-11 18:05 被阅读0次
    Day2 打工人.gif

    上文档:

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

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

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

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

    这一次为大家带来的就是“在代码中创建布局”。

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

    1、创建步骤:

    (1)声明布局

    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);

    相关文章

      网友评论

          本文标题:Day2 鸿蒙,从“打工人”看代码创建布局

          本文链接:https://www.haomeiwen.com/subject/czxsgktx.html