HarmonyOS 如何实现列表的上拉效果?

现有2个tab,每个tab下面是一个列表,当在第一个tab下,滑动到列表底部后,手动上拉列表,列表需要跟随手势上拉,松开手后,列表复位到底部后,切换到下一个tab

阅读 554
1 个回答

请参考示例如下:

List({ scroller: this.scroller }) {
  ForEach(this.listData, (pageData: string) => {
    ListItem() {
      Text(pageData).width('100%').height(50).backgroundColor('#00ffff')
    }
  }, (item: string, index: number) => item + index.toString())
}
.width('100%')
.height('100%')
.chainAnimation(true)
.onReachEnd(() => {
  // 判断是否滑动到底部
  console.info("onReachEnd=======>")
})
.onDidScroll((crollOffset: number, scrollState: ScrollState) =>{
  // 结合onReachEnd滑动到底部得条件,crollOffset累加得高度做期望得业务
  console.info("crollOffset = " + crollOffset + " scrollState = " +scrollState)
})
.contentEndOffset(10)
.cachedCount(5) // cachedCount表示屏幕外List/Grid预加载item的个数。
.scrollBar(BarState.Off)
.listDirection(Axis.Vertical)
// .edgeEffect(EdgeEffect.None) // 不设置该属性,list就会往上滑动并回弹
.padding({ left: 16, right: 16 })
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进