第三节

组件(Component)是界面搭建与显示的最小单位。
组件根据功能可以分为以下五大类:基础组件、容器组件、媒体组件、绘制组件、画布组件。

使用资源引用类型
Resource是资源引用类型,用于设置组件属性的值。推荐大家优先使用Resource类型,将资源文件(字符串、图片、音频等)统一存放于resources目录下,便于开发者统一维护。同时系统可以根据当前配置加载合适的资源,例如,开发者可以根据屏幕尺寸呈现不同的布局效果,或根据语言设置提供不同的字符串。
我们可以将这些硬编码写到entry/src/main/resources下的资源文件中
$r('app.type.name')”的形式引用应用资源
类似 android 中的 values.xml strings.xml dimen.xml 等文件

  • Column表示沿垂直方向布局的容器。
  • Row表示沿水平方向布局的容器。

主轴和交叉轴概念
justifyContent : 设置子组件在主轴方向上的对齐格式。
alignItems : 设置子组件在交叉轴方向上的对齐格式。

List组件和Grid组件的使用

List 组件使用 forEach 渲染 ListItem 来构建子item
List组件的divider属性可以设置分割线
List组件提供了一系列事件方法用来监听列表的滚动
List组件里面的列表项默认是按垂直方向排列的,如果您想让列表沿水平方向排列,您可以将List组件的listDirection属性设置为Axis.Horizontal。

跟 List 一样 ,使用forEach 来渲染,GridItem 来构建 子item

List 性能优化 懒加载,设置宽高
https://developer.harmonyos.com/cn/docs/documentation/doc-guides-V3/ui-ts-performance-improvement-recommendation-0000001477981001-V3#ZH-CN_TOPIC_0000001477981001__%E6%8E%A8%E8%8D%90%E4%BD%BF%E7%94%A8%E6%95%B0%E6%8D%AE%E6%87%92%E5%8A%A0%E8%BD%BD

Tabs组件仅可包含子组件TabContent,每一个页签对应一个内容视图即TabContent组件。

说明
TabContent组件不支持设置通用宽度属性,其宽度默认撑满Tabs父组件。
TabContent组件不支持设置通用高度属性,其高度由Tabs父组件高度与TabBar组件高度决定。

您可以使用Tabs组件接口中的参数barPosition设置页签位置。此外页签显示位置还与vertical属性相关联,vertical属性用于设置页签的排列方向,当vertical的属性值为false(默认值)时页签横向排列,为true时页签纵向排列。

  • TabContent的tabBar属性除了支持string类型,还支持使用@Builder装饰器修饰的函数。您可以使用@Builder装饰器,构造一个生成自定义TabBar样式的函数
  • 最后还需要给Tabs添加onChange事件,Tab页签切换后触发该事件
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、表格元素 1、table元素的基础元素组成 一个可选的 元素 一个可选的 元素 下列任意一个: 零个或...
    小男孩儿长大了阅读 217评论 0 0
  • Dart 语法学习目录 第一节: Dart 语法了解,认识变量,常量,数据类型[https://www.jians...
    曹老师阅读 2,616评论 0 1
  • 本章节以及后续章节的源码,当然也可以从我的github下载,在源码中我自己加了一些中文注释。 现在是晚上九点十五,...
    owolf阅读 1,299评论 0 2
  • 一、DOM 什么是DOM?Document Object Model(文档对象模型)。DOM是针对HTML和XML...
    空谷悠阅读 986评论 0 2
  • 1. 函数的概念 1.1 什么是函数 函数具有某种特定功能的代码块。 函数其实本质也是一种数据,属于对象数据类型。...
    小男孩儿长大了阅读 453评论 0 1