HarmonyOS 关于Scroll和List嵌套滚动的悬停问题
我想实现的功能是,Scroll Area 滚动到一半就悬停,但是嵌套的List 并不能滚动到底部(item 28,item 29 被藏住了),有什么办法让下面List的内容能完全的显示出来。代码如下:
@Entry
@Component
struct StickyNestedScroll {
  @State arr: number[] = []
  private stop:boolean = true
  private scroller = new Scroller()
  @Styles
  listCard() {
    .backgroundColor(Color.White)
    .height(72)
    .width("100%")
    .borderRadius(12)
  }
  build() {
    Scroll(this.scroller) {
      Column() {
        Text("Scroll Area")
          .width("100%")
          .height("40%")
          .backgroundColor('#0080DC')
          .textAlign(TextAlign.Center)
          .onAreaChange((_, newValue) => {
            if ( newValue.globalPosition.y && newValue.height) {
              if (Math.abs(newValue.globalPosition.y as number) >=  (newValue.height as number)/2) {
                this.stop = true
              }else {
                this.stop = false
              }
            }else {
              this.stop = false
            }
          })
        Tabs({ barPosition: BarPosition.Start }) {
          TabContent() {
            List({ space: 10 }) {
              ForEach(this.arr, (item: number) => {
                ListItem() {
                  Text("item" + item)
                    .fontSize(16)
                }.listCard()
              }, (item: string) => item)
            }.width("100%")
            .edgeEffect(EdgeEffect.Spring)
            .nestedScroll({
              scrollForward: NestedScrollMode.PARENT_FIRST,
              scrollBackward: NestedScrollMode.SELF_FIRST
            })
          }.tabBar("Tab1")
          TabContent() {
          }.tabBar("Tab2")
        }
        .vertical(false)
        .height("100%")
      }.width("100%")
    }
    .onScrollFrameBegin((offset: number) => {
      if (!this.stop) return { offsetRemain: offset };
      if (offset <= 0) return { offsetRemain: offset }
      return {
        offsetRemain: 0
      }
    })
    .edgeEffect(EdgeEffect.Spring)
    .friction(0.6)
    .backgroundColor('#DCDCDC')
    .scrollBar(BarState.Off)
    .width('100%')
    .height('100%')
  }
  aboutToAppear() {
    for (let i = 0; i < 30; i++) {
      this.arr.push(i)
    }
  }
}
        HarmonyOS
      
        赞
        
 收藏 0
 回答 1
 
        待解决
        
相关问题
 scroll和list的嵌套滑动 
3131浏览  • 1回复 待解决
HarmonyOS scroll和list滚动冲突 
1415浏览  • 1回复 待解决
HarmonyOS Scroll嵌套List的滑动问题 
1135浏览  • 1回复 待解决
HarmonyOS Scroll嵌套Scroll,外部的Scroll无法滚动 
1184浏览  • 1回复 待解决
HarmonyOS 对于Scroll内有Tabs,Tabs内有List,list和外部的Scroll嵌套滚动有什么比较方便的办法实现呢? 
1161浏览  • 1回复 待解决
HarmonyOS List嵌套List和List嵌套Grid问题 
1333浏览  • 1回复 待解决
#鸿蒙通关秘籍# 在HarmonyOS中怎样解决Scroll和List组件嵌套时的滚动冲突,确保滚动顺畅? 
1045浏览  • 0回复 待解决
refresh + scroll+list嵌套问题 
1503浏览  • 1回复 待解决
使用Scroll嵌套List实现可滚动表格,这个怎么使用 
949浏览  • 1回复 待解决
HarmonyOS  Scroll+web+list的嵌套滑行 
950浏览  • 1回复 待解决
HarmonyOS  Scroll嵌套list,scrollToItemInGroup不执行 
2673浏览  • 1回复 待解决
List、Scroll、Swipper 、web等嵌套使用滑动冲突问题 
2973浏览  • 1回复 待解决
HarmonyOS scroll嵌套List不能整体滑动 
1847浏览  • 1回复 待解决
HarmonyOS List和Web嵌套问题 
943浏览  • 1回复 待解决
HarmonyOS Scroll中嵌套List滑动事件冲突 
1191浏览  • 1回复 待解决
HarmonyOS  scroll嵌套list页面无法滑动 
2499浏览  • 1回复 待解决
HarmonyOS Web组件和List的嵌套使用问题 
1791浏览  • 1回复 待解决
HarmonyOS Scroll 嵌套 RelativeContainer 问题 
1581浏览  • 1回复 待解决
HarmonyOS scroll滚动问题 
1127浏览  • 1回复 待解决
Web和List嵌套手势冲突问题 
2000浏览  • 1回复 待解决
HarmonyOS Scroll嵌套RelativeContainer 问题 
1310浏览  • 1回复 待解决
HarmonyOS list、scroll容器组件如何获取滚动的距离 
1537浏览  • 1回复 待解决
HarmonyOS list嵌套scroll+list布局,如果解决滑动冲突 
1937浏览  • 1回复 待解决
HarmonyOS 应用可滚动的复杂首页如何实现,List ?Scroll? 
1060浏览  • 1回复 待解决





















Tabs部分可以尝试修改为以下代码
将高度设置为80%
根因为写100%的话,滑动后加上上面text部分,总高则为120%,超出了屏幕展示区域;原本text设置的40%,滑动一半为20%,下面tabs就只能占高为80%。