HarmonyOS 可滑动组件嵌套后内部的可滑动组件无法监听滑动
当前需要有一个全局的瀑布流组件放在其它page中,其它page需要整体滑动,所以只能嵌套使用但是瀑布流组件无法监听滑动,如何能够在不影响外部list的情况下只对嵌套内容进行滑动监听?
@Entry
@Component
export default struct scrollTestPage {
dataList = [1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6]
dataList2 = [1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6]
dataList3 = [1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6]
build() {
List() {
ForEach(this.dataList, (item: number, position: number) => {
ListItem() {
Text(item.toString()).width("100%").height(44).textAlign(TextAlign.Center)
}
}, (item: number, position: number) => {
return item + "_" + position
})
ListItem() {
WaterFlow() {
ForEach(this.dataList2, (item: number, position: number) => {
FlowItem() {
Text(item.toString()).layoutWeight(1).height(44).textAlign(TextAlign.Center)
}
})
}.onDidScroll((data) => {
console.error("waterFlow scroll")
})
}
ListItem() {
List() {
ForEach(this.dataList2, (item: number, position: number) => {
ListItem() {
Text(item.toString()).layoutWeight(1).height(44).textAlign(TextAlign.Center)
}
})
}.onDidScroll((data) => {
console.error("childList scroll")
})
}
}.onDidScroll((data) => {
console.error("list scroll")
})
}
}
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
- 28.
- 29.
- 30.
- 31.
- 32.
- 33.
- 34.
- 35.
- 36.
- 37.
- 38.
- 39.
- 40.
- 41.
- 42.
- 43.
- 44.
- 45.
HarmonyOS
赞
收藏 0
回答 1
相关问题
HarmonyOS 是否有可吸顶的tab滑动组件呢?
890浏览 • 1回复 待解决
Tabs组件嵌套滑动组件
2428浏览 • 1回复 待解决
HarmonyOS Tabs组件嵌套滑动
1178浏览 • 1回复 待解决
HarmonyOS 监听List组件滑动
1010浏览 • 1回复 待解决
HarmonyOS Scroll组件无法滑动
1203浏览 • 1回复 待解决
HarmonyOS Refresh组件嵌套滑动冲突问题
1939浏览 • 1回复 待解决
HarmonyOS Scroll容器内部嵌套2个Waterflow组件,滑动条嵌套设置不生效
806浏览 • 1回复 待解决
HarmonyOS Tabs嵌套TabContent内部嵌套一个可拖动的组件导致冲突
712浏览 • 1回复 待解决
HarmonyOS Scroll 组件内部放不确定高度的内容,如何监听页面滑动到底部,如何监听快要滑动到底部
995浏览 • 1回复 待解决
HarmonyOS list嵌套scroll左右滑动无法查看屏幕外的组件
912浏览 • 0回复 待解决
HarmonyOS Tabs组件嵌套Web组件,导致横向滑动冲突
705浏览 • 1回复 待解决
现列表项ListItem滑动显示可置顶或删除
2466浏览 • 1回复 待解决
如何监听List组件的总滑动距离
3516浏览 • 1回复 待解决
HarmonyOS scroll嵌套list页面无法滑动
1448浏览 • 1回复 待解决
HarmonyOS 怎么实现高度自适应并有最大高度的可滑动的文本
597浏览 • 1回复 待解决
HarmonyOS List组件如何监听滑动到底部?
1808浏览 • 1回复 待解决
HarmonyOS 嵌套滑动问题
1109浏览 • 1回复 待解决
HarmonyOS怎么实现Tabs组件滑动时indictor随之滑动的效果?
1075浏览 • 1回复 待解决
HarmonyOS 父子组件滑动冲突
794浏览 • 1回复 待解决
scroll和list的嵌套滑动
2582浏览 • 1回复 待解决
HarmonyOS 双向滑动Slider组件
918浏览 • 1回复 待解决
HarmonyOS 滑动时组件问题
757浏览 • 1回复 待解决
HarmonyOS 图片组件手势滑动
644浏览 • 1回复 待解决
Scroll与WaterFlow滑动嵌套
2118浏览 • 1回复 待解决
滑动嵌套事件冲突处理
1028浏览 • 0回复 待解决
可根据以下步骤:
1、使用refresh组件,将refresh组件作为父组件嵌套div,这样可以实现滑动展示。配合list、list-item一起使用,确保内容能够正确滑动。
2、设置相关属性,将refresh组件的高度设置为固定值以避免内容被压缩。将父组件的高度设置为固定值,以确保外部列表的高度不会被压缩。
3、控制触摸事件,对子列表组件的scrollbottom事件进行控制,当子列表组件滑动至末尾时,将父组件的scrollable属性设置为false,使得父列表无法滑动 。同时为了保证用户触摸子列表之外其他区域时,可以正常滑动父列表,需要在子列表之外其他区域的组件上对touchstart事件进行控制,将父组件的scrollable属性设置为true。
参考示例: