React-Native——Scrollview嵌套标签页

一个很常见的UI,不过在RN上好像没有成熟的解决方案,只好自己动手实现。

尝试了很多方案,动画、手势...都有瑕疵,在这里只介绍我认为可用性最高的解决方案。

思路是这样的:scrollview嵌套scrolltabview,通过控制scrollEnabled,来切换滚动权限,实现视差效果。

第一步:基本结构、变量

image.png

image.png

第二步:监听scroll事件,记录scrolltabview的contentOffsetY以及控制scroll权限

image.png

第三部(关键):切换tab页,调整scrollview的contentOffset

防止切换tab,scroll事件不触发,控制当前scrollRef移动内容。

image.png

大功告成,其实就这么几部,一开始就想到了这个实现方案,只是遗漏了第二步关键点,所以多走了很多弯路。

zky9v-0qiby.gif

流畅性马马虎虎,不过勉强能用。。。

日记本

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!

赞赏支持
被以下专题收入,发现更多相似内容