Refresh通过参数refreshing判断当前组件是否正在刷新,可以控制该参数变化来触发下拉刷新:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/ts-container-refresh-V5\#ZH-CN\_TOPIC\_0000001930756929\_\_refreshoptions对象说明demo:@Entry @Component struct RefreshExample { @State isRefreshing: boolean = false @State arr: String[] = ['0', '1', '2', '3', '4','5','6','7','8','9','10'] build() { Column() { Button('刷新').onClick(()=>{ this.isRefreshing = true }) Refresh({ refreshing: $$this.isRefreshing}) { List() { ForEach(this.arr, (item: string) => { ListItem() { Text('' + item) .width('100%').height(100).fontSize(16) .textAlign(TextAlign.Center).borderRadius(10).backgroundColor(0xFFFFFF) } }, (item: string) => item) } .onScrollIndex((first: number) => { console.info(first.toString()) }) .width('100%') .height('100%') .divider({strokeWidth:1,color:Color.Yellow,startMargin:10,endMargin:10}) .scrollBar(BarState.Off) } .onStateChange((refreshStatus: RefreshStatus) => { console.info('Refresh onStatueChange state is ' + refreshStatus) }) .onOffsetChange((value: number) => { console.info('Refresh onOffsetChange offset:' + value) }) .onRefreshing(() => { setTimeout(() => { this.isRefreshing = false }, 2000) console.log('onRefreshing test') }) .backgroundColor(0x89CFF0) .refreshOffset(64) .pullToRefresh(true) } } }
Refresh通过参数refreshing判断当前组件是否正在刷新,可以控制该参数变化来触发下拉刷新:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/ts-container-refresh-V5\#ZH-CN\_TOPIC\_0000001930756929\_\_refreshoptions对象说明
demo: