HarmonyOS list 嵌套web滑动切换问题

1. 将web组件作为一个ListItemGroup的header

2. web为了考虑性能,最大高度会设置为当前显示区域的高度

3.web和list都会有滚动,两者之间需要切换滚动,看起来像是一个整体

问题:

1.快速滑动的时候,会顿一下

2.向下快速滚动松手,web不能自动跟随惯性向下滚动

有什么方法可以改善这个效果,滑动惯性,能否做到流畅衔接

HarmonyOS
2024-09-05 09:34:03
浏览
已于2024-9-5 09:34:35修改
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
zbw_apple

设置renderMode和layoutmode接口

参考链接:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/ts-basic-components-web-V5

参考demo:

import { webview } from '@kit.ArkWeb'; 
 
@Entry 
@Component 
struct Demo4Page { 
  private scrollerForScroll: Scroller = new Scroller(); 
  controller: webview.WebviewController = new webview.WebviewController; 
  @State ScrollDirection: ScrollDirection = ScrollDirection.Vertical; 
  title = '2023落下帷幕,一起迎接2024年***********************************************'; 
  review = '评论'; 
  context = '一起迎接2024年,***********************************************************************************'; 
  list = [0, 0, 0, 0]; 
 
  build() { 
    Flex() { 
      Scroll(this.scrollerForScroll) { 
        Column({ space: 5 }) { 
          Text(this.title) 
            .fontSize(40) 
            .padding(40) 
          List() { 
            ForEach(this.list, () => { 
              ListItem() { 
                Text(this.context).fontSize(16) 
              } 
            }) 
          } 
 
          Web({ src: $rawfile('index.html'), controller: this.controller, renderMode: RenderMode.SYNC_RENDER }) 
            .nestedScroll({ 
              scrollForward: NestedScrollMode.SELF_FIRST, 
              scrollBackward: NestedScrollMode.SELF_FIRST 
            }) 
            .height('100%') 
            .width('100%') 
            .layoutMode(WebLayoutMode.FIT_CONTENT) 
          Text(this.review) 
            .fontSize(30) 
          List() { 
            ForEach(this.list, () => { 
              ListItem() { 
                Text(this.context) 
                  .fontSize(16) 
              } 
            }) 
          } 
        } 
        .width('95%') 
      } 
      .scrollBar(BarState.Off) 
      .width('100%') 
      .height('120%') 
      .scrollable(this.ScrollDirection) 
    } 
    .width('100%') 
    .height('100%') 
 
  } 
}
分享
微博
QQ
微信
回复
2024-09-05 18:32:26
相关问题
WebList嵌套手势冲突问题
884浏览 • 1回复 待解决
HarmonyOS Web组件和List嵌套使用问题
116浏览 • 1回复 待解决
HarmonyOS List嵌套waterflow滑动卡顿
181浏览 • 1回复 待解决
HarmonyOS Tabs和Web嵌套左右滑动问题
217浏览 • 1回复 待解决
HarmonyOS scroll嵌套List不能整体滑动
228浏览 • 1回复 待解决
scroll和list嵌套滑动
1299浏览 • 1回复 待解决
HarmonyOS 嵌套滑动问题
180浏览 • 1回复 待解决
Tab组件内嵌web view左右滑动切换问题
149浏览 • 1回复 待解决
HarmonyOS list滑动问题
634浏览 • 1回复 待解决
如何处理tabs嵌套web滑动场景
401浏览 • 1回复 待解决
HarmonyOS Refresh组件嵌套滑动冲突问题
717浏览 • 1回复 待解决
Web嵌套滑动卡顿怎么办?
135浏览 • 1回复 待解决
refresh + scroll+list嵌套问题
245浏览 • 1回复 待解决
HarmonyOS Tabs组件嵌套滑动
183浏览 • 1回复 待解决