Tabs滑动距离的问题有哪些?

目前Tabs中TabContent,只有onTouch方法可以根据手指的滑动距离来获取到TabContent的滑动距离,当松开手后,Tabs自动回弹或者切换到下一页,没有办法获取到滑动的距离,现在需要根据滑动的距离来做动效,目前没有办法实现。

HarmonyOS
2024-10-09 10:44:40
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
zxjiu

分别有以下思路:

1.右侧固定展示「更多」图标,左侧为正常的tabs切换按钮,正常左右滚动通过将Tab组件的barHeight设为0,可以隐藏Tab组件自带的tabBar,然后使用Row组件+自定义Tab页签的方式实现tabBar。

2.tabBar页签下的小横线在Tab切换过程中通过平移动画运动把一个高度为2的column作为下划线,使用stack堆叠在自定义的tabBar上,这个下划线相对左侧的margin和宽度通过@State修饰。在页签切换时,将当前页签的宽度值,相对左侧的margin分别赋给下划线对应的属性使用onGestureSwipe监听Tab的滑动手势,逐帧更新下划线相对左侧的margin使用onScroll监听自定义tabBar的滑动,逐帧更新下划线相对左侧的margin使用onAnimationStart回调切换动画开始时触发该回调,触发下划线跟着页面一起滑动的回调。

3.Tab切换时,顶部tabBar自动切换并滑动到屏幕范围内tabBar的中的List组件绑定Scroller,在Tab组件触发onChange回调时,使用scrollToIndex让自定义tabBar滚动到当前选中的页签,通过这种方式,下划线也会同步平移。

分享
微博
QQ
微信
回复
2024-10-09 16:14:30
相关问题
如何监听List组件滑动距离
2635浏览 • 1回复 待解决
系统Tabs组件用法哪些
712浏览 • 1回复 待解决
HarmonyOS Tabs和Web嵌套左右滑动问题
455浏览 • 1回复 待解决
Tabs组件嵌套滑动组件
1760浏览 • 1回复 待解决
HarmonyOS Tabs组件嵌套滑动
671浏览 • 1回复 待解决
webview 问题哪些
482浏览 • 1回复 待解决
背景属性问题哪些
595浏览 • 1回复 待解决
tabs组件 左右滑动延迟较高
1166浏览 • 1回复 待解决
uiTest使用问题哪些
543浏览 • 1回复 待解决
OAID授权问题哪些
727浏览 • 1回复 待解决
List使用问题哪些
586浏览 • 1回复 待解决
HarmonyOS tabs和grid实现滑动
236浏览 • 1回复 待解决