native固定吸顶 react_GitHub - wuao/CeilingProject: 一个漂亮的React-native 的吸顶效果

CeilingProject

一个漂亮的React-native 的吸顶效果

置顶的原理

就是在将其在滚动的过程中在滚动到超过你所需要置顶的高度的时候 就将其设置为position: 'absolute'

比如 我的顶部布局有160 那么就是说我在滚动了到160之后 才会开始触发置顶操作

小于这个操作的滚动回调的高度 我们不会触发

这样我们会解决一部分的滚动事件回调的抖动操作在满足已经置顶的操作的之前

我们还需要分清楚触发滚动的方向

我们通过y轴的距离来判断 大于顶部的布局的时候 那么就是往上滑动 那么就是触发置顶操作

在触发之后 我们需要通过一个变量来记录 我们的是否已经置顶了 来避免触发重复置顶 这样会产生抖动效果 我们只需要随便给一个变量默认-1

触发之后 我们 设置为0 然后在触发还原操作之后 我们在将其重置为-1 就行了

如果说我们整个布局是大ScrollView的 包裹head 然后body 是一个列表那么 我推荐将ScrollView的 触发效果屏蔽掉 2个会产生冲突

这样的操作 最要就通FlatList本身的置顶操作来做 然后将其通过数据 布局来做 不同的item 渲染不同的view

这个demo 在下载完成之后 你可以运行npm install 或者yarn 之后

在执行下react-native link 会依赖一个react-native-gestrue-handler 在android端开as 的时候会看到

ios 效果

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值