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
相关问题
系统Tabs组件用法哪些
320浏览 • 1回复 待解决
如何监听List组件滑动距离
2128浏览 • 1回复 待解决
HarmonyOS Tabs和Web嵌套左右滑动问题
341浏览 • 1回复 待解决
背景属性问题哪些
439浏览 • 1回复 待解决
webview 问题哪些
321浏览 • 1回复 待解决
HarmonyOS Tabs组件嵌套滑动
388浏览 • 1回复 待解决
Tabs组件嵌套滑动组件
1430浏览 • 1回复 待解决
uiTest使用问题哪些
329浏览 • 1回复 待解决
List使用问题哪些
326浏览 • 1回复 待解决
OAID授权问题哪些
423浏览 • 1回复 待解决
tabs组件 左右滑动延迟较高
1070浏览 • 1回复 待解决
Flutter集成问题哪些
180浏览 • 1回复 待解决
签名证书配置问题哪些
514浏览 • 1回复 待解决
启动页面配置问题哪些
582浏览 • 1回复 待解决
ArkTS生成密钥问题哪些
339浏览 • 1回复 待解决
bindPopup样式问题哪些啊?
427浏览 • 1回复 待解决