javascript - React Native FlatList中scrollToIndex和手动滚动的区别

标签 javascript reactjs react-native

我有一个 FlatList,它使用 scrollToIndex 函数根据时间序列自动逐项滚动。我还想让用户自己滚动列表,并在发生这种情况时暂时禁用自动滚动。
我的想法是使用 onScroll 事件来捕捉用户何时滚动列表并设置一个 bool 标志。问题是 onScroll 事件也被 scrollToIndex 触发。
有解决这个问题的简单方法吗?

最佳答案

您可以使用名为“onMomentumScrollEnd”的方法,该方法对于触摸交互应该是唯一的。有了它,您可以去抖动或禁用您的计时器。不过,您必须测试您的定时 scrollToIndex 函数是否能够优先于用户交互。在这种情况下,您必须将 PanResponder 添加到包含 View 并从其“onPanResponderGrant”方法中禁用/去抖动您的计时器。

关于javascript - React Native FlatList中scrollToIndex和手动滚动的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54439992/

相关文章:

javascript - 键码 - ctrl 键错误

javascript - 为什么 onKeyDown 和 onKeyUp 在附加到 contenteditable div 中的跨度时不触发?

javascript - RefreshControl实现iOS和Android平台

javascript - DOM 事件目标解构

javascript - 为什么 document.body.style.backgroundImage 名称没有显示在警报中?

javascript - 将 mySQL 日期转换为 Javascript 日期

reactjs - 与 Redux : returns incorrect state object react

node.js - 使用 Express Backend 和 express-session react App

android - 找不到满足版本限制的 'com.android.support:appcompat-v7' 版本

android - 如何使用 React Native Share API 共享 App 链接?