配合LazyForEach,为List、Grid、Waterfall和Swiper等容器组件滑动浏览时提供内容预加载能力,提升用户浏览体验。
说明
本模块首批接口从API version 12开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
导入模块
import { BasicPrefetcher, IDataSourcePrefetching, IPrefetcher } from '@kit.ArkUI';
IPrefetcher
实现此接口以提供预取能力。
元服务API: 从API version 12开始,该接口支持在元服务中使用。
系统能力: SystemCapability.ArkUI.ArkUI.Full
setDataSource
setDataSource(dataSource: IDataSourcePrefetching): void;
设置支持预取的DataSource以绑定到Prefetcher
元服务API: 从API version 12开始,该接口支持在元服务中使用。
系统能力: SystemCapability.ArkUI.ArkUI.Full
参数说明:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
dataSource | [IDataSourcePrefetching] | 是 | 支持预取能力的数据源 |
class MyPrefetcher implements IPrefetcher {
private dataSource?: IDataSourcePrefetching;
setDataSource(dataSource: IDataSourcePrefetching): void {
this.dataSource = dataSource;
}
visibleAreaChanged(minVisible: number, maxVisible: number): void {
this.dataSource?.prefetch(minVisible);
}
}
visibleAreaChanged
visibleAreaChanged(minVisible: number, maxVisible: number): void
当可见区域边界发生改变时调用此方法。支持与List、Grid、Waterfall和Swiper组件配合使用
元服务API: 从API version 12开始,该接口支持在元服务中使用。
系统能力: SystemCapability.ArkUI.ArkUI.Full
参数说明:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
minVisible | number | 是 | 列表可见区域的上界 |
maxVisible | number | 是< |