【鸿蒙 ArkUI实战开发】—— 主页瀑布流实现


📚鸿蒙开发往期学习笔录📌:

📌 鸿蒙(OpenHarmony)南向开发保姆级知识点汇总~
📌 鸿蒙应用开发与鸿蒙系统开发哪个更有前景?
📌 嵌入式开发适不适合做鸿蒙南向开发?看完这篇你就了解了~
📌 对于大前端开发来说,转鸿蒙开发究竟是福还是祸?
📌 鸿蒙岗位需求突增!移动端、PC端、IoT到底该怎么选?
📌 记录一场鸿蒙开发岗位面试经历~
📌 持续更新中……


介绍

本示例介绍使用ArkUI WaterFlow 组件和 LazyForEach 实现瀑布流场景。该场景多用于购物、资讯类应用。

效果图预览

使用说明

  1. 加载完成后显示整个列表,超过一屏时可以上下滑动。

实现思路

  1. 创建WaterFlowDataSource类,实现IDataSource接口的对象,用于WaterFlow和LazyForEach加载数据。
  2. 通过@Builder自定义瀑布流列表项组件,作为FlowItem的子组件。
  3. 结合父组件传递的数据以及WaterFlow和LazyForEach循环构造出整个列表。

WaterFlow

子组件

包含 FlowItem 子组件。

说明
WaterFlow子组件的visibility属性设置为None时不显示,但依然会占用子组件对应的网格。

接口

WaterFlow(options?: {footer?: CustomBuilder, scroller?: Scroller})

参数:

参数名 参数类型 必填 参数描述
footer CustomBuilder 设置WaterFlow尾部组件。
scroller Scroller 可滚动组件的控制器,与可滚动组件绑定。
目前瀑布流仅支持Scroller组件的scrollToIndex接口。

属性

除支持 通用属性 外,还支持以下属性:

名称 参数类型 描述
columnsTemplate string 设置当前瀑布流组件布局列的数量,不设置时默认1列。
例如, ‘1fr 1fr 2fr’ 是将父组件分3列,将父组件允许的宽分为4等份,第一列占1份,第二列占1份,第三列占2份。并支持 auto-fill 。
默认值:‘1fr’
rowsTemplate string 设置当前瀑布流组件布局行的数量,不设置时默认1行。
例如, '1fr 1fr 2fr’是将父组件分三行,将父组件允许的高分为4等份,第一行占1份,第二行占一份,第三行占2份。并支持 auto-fill 。
默认值:‘1fr’
itemConstraintSize ConstraintSizeOptions 设置约束尺寸,子组件布局时,进行尺寸范围限制。
columnsGap Length 设置列与列的间距。
默认值:0
rowsGap Length
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值