鸿蒙(HarmonyOS)应用开发——容器组件(List组件)

news/2024/7/21 11:28:03 标签: 华为, harmonyos, 前端

前言

前面一篇文章中,已经说了基础组件。那么接下来就是容器组件中的List组件

根据功能分类
基础组件
容器组件
媒体组件
绘制组件
画布组件
Column
Row
List
Tabs
Grid
Swiper

概述

List是很常用的滚动类容器组件,包含有一系列相同宽度的列表项,List组件和子组件ListItem一起使用,List列表中的每一个列表项对应一个ListItem组件。

语法

List(value?: {space?:number|string,initialIndex?:number,scroller?:Scroller})
参数说明
space设置列表间距
initalIndex设置当前list初次加载时起始位置显示的item
scroller设置控制List组件的滚动

属性

设置List排列方向

  • 语法
    listDirection
  List().listDirection(Axis.Vertical)
  • 说明
    设置List 组件排列方向,默认时按照 垂直方向排列

  • 参数

参数说明
Vertical子组件ListItem在List容器组件中呈纵向排列
Horizontal子组件ListItem在List容器组件中呈横向排列。

设置列表分割线

  • 语法
    divider
  List().divider(value: {
        strokeWidth: Length;
        color?: ResourceColor;
        startMargin?: Length;
        endMargin?: Length;
    }
  • 说明
    List组件子组件ListItem之间默认是没有分割线的,部分场景子组件ListItem间需要设置分割线

  • 参数

参数说明
strokeWidth分割线的线宽
color分割线的颜色。
startMargin分割线距离列表侧边起始端的距离。
endMargin分割线距离列表侧边结束端的距离。

List列表滚动事件监听

List组件提供了一系列事件方法用来监听列表的滚动,您可以根据需要,监听这些事件来做一些操作:

  • onScroll:列表滑动时触发,返回值scrollOffset为滑动偏移量,scrollState为当前滑动状态。
  • onScrollIndex:列表滑动时触发,返回值分别为滑动起始位置索引值与滑动结束位置索引值。
  • onReachStart:列表到达起始位置时触发。
  • onReachEnd:列表到底末尾位置时触发。
  • onScrollStop:列表滑动停止时触发。
List({ space: 10 }) {
  ForEach(this.arr, (item) => {
    ListItem() {
      Text(`${item}`)
        ...
    }
  }, item => item)
}
.onScrollIndex((firstIndex: number, lastIndex: number) => {
  console.info('first' + firstIndex)
  console.info('last' + lastIndex)
})
.onScroll((scrollOffset: number, scrollState: ScrollState) => {
  console.info('scrollOffset' + scrollOffset)
  console.info('scrollState' + scrollState)
})
.onReachStart(() => {
  console.info('onReachStart')
})
.onReachEnd(() => {
  console.info('onReachEnd')
})
.onScrollStop(() => {
  console.info('onScrollStop')
})

http://www.niftyadmin.cn/n/5231788.html

相关文章

【Datagear】关于Datagear目前发现的部分限制

【背景】 Datagear是一款非常不错的开源可商用BI分析平台,市面上大多数贩卖的BI平台能做的它基本都能做,不能做的也可以通过自己编辑JS甚至写后端服务实现,有完整的用户和权限管理系统内置,是很不错的低成本实现企业BI需求的平台…

springboot 中通过定时任务备份数据库并压缩传输到指定另外一台linux服务器得文件夹中 或 发送压缩包到指定邮箱

1、将JSch和邮件插件添加到项目pom文件中。Maven <!--java 通过JSch操作Linux--> <dependency><groupId>com.jcraft</groupId><artifactId>jsch</artifactId><version>0.1.55</version> </dependency><!-- 邮件模板…

密码学实验三

第一题&#xff1a; 寻找满足特定条件的 e&#xff1b; 第一步&#xff1a; 第二步&#xff1a; 由式1.7知&#xff0c;给定e,p,q&#xff0c;就可计算出相应的RSA不动点的数目。因此设计算法步骤如下&#xff1a; 枚举找出所有与φ(n)互素的e。枚举所有满足条件的e&#xff…

VB.NET二维数组的组合

缘由https://bbs.csdn.net/topics/397512167 首先写了自上而下的查找&#xff0c;在此基础上再加逻辑控制以达到目标。 Sub 四维组合()Dim wei4 {{4, 5, 6, 7}, {1, 2, 4, 8}, {9, 10, 11, 12}, {3, 13, 21, 22}}Dim j 1, h 0, f 0, zc wei4(0, f)Dim sc ""Whi…

蓝桥杯第198题 人物相关性分析 C++ 模拟 字符串 双指针

题目 思路和解题方法 程序首先定义了一个函数check&#xff0c;用于判断一个字符是否为字母。接下来&#xff0c;程序读取输入的整数k和一行字符串str。定义了两个空的向量a和b&#xff0c;用于存储满足条件的子串的起始位置。使用for循环遍历字符串str的每个字符&#xff0c;检…

HarmonyOS

基本概念 1、ARKTS是由ArkUI框架提供&#xff0c;它是声明式UI 2、声明式UI的思想&#xff1a;- 关心描述UI的呈现结果&#xff0c;而不关心过程&#xff1b;- 状态驱动视图更新自定义组件的组成 关键字说明举例struct声明组件名struct ToDolist 代办组件EntryComponent装饰…

nodejs微信小程序+python+PHP金融产品销售系统的设计与实现-计算机毕业设计推荐

目 录 摘 要 I ABSTRACT II 目 录 II 第1章 绪论 1 1.1背景及意义 1 1.2 国内外研究概况 1 1.3 研究的内容 1 第2章 相关技术 3 2.1 nodejs简介 4 2.2 express框架介绍 6 2.4 MySQL数据库 4 第3章 系统分析 5 3.1 需求分析 5 3.2 系统可行性分析 5 3.2.1技术可行性&#xff1a;…

关于加强型葡萄酒的类型有哪些?

加强型葡萄酒指的是在酿造过程中或酿造完后&#xff0c;添加酒精提高葡萄酒酒精度的葡萄酒&#xff0c;一般加强型葡萄酒的酒精度数都能达到15度以上。那么&#xff0c;云仓酒庄的品牌雷盛红酒分享加强型葡萄酒的类型有哪些呢&#xff1f; 云仓酒庄多品牌多代言运营模式&#…