如何在不禁用滚动的情况下在 Pressable 内部实现 FlatList?

How to implement a FlatList inside of a Pressable without scrolling getting disabled?

基本上,我希望 FlatList 具有 onPress 功能(简单解释一下)以及默认的滚动功能。现在,如果我在 Pressable 中有一个 FlatList,那么我无法滚动 FlatList。

我也试过将 Pressable 放在 FlatList 的 RenderItem 组件中,但是我有很多项目要显示,所以效率很低。

像下面这样尝试在 FlatList 项目父容器上进行触摸处理,这样滚动问题就不会再出现了,您可以轻松地分别处理每个项目上的触摸

<FlatList
  style={{...}}
  data={[...]}
  keyExtractor={(item, index) => index.toString()}
  renderItem={({ item }) => (
    <TouchableWithoutFeedback onPress={() => {...}}>
      <View>
        ....
      </View>
    </TouchableWithoutFeedback>
  )}
/>

而不是 Pressable 包装 FlatList,我了解到我们可以在一个简单的视图上使用 React Native 的 手势响应系统 来获得这样的行为我需要。

<View
    onStartShouldSetResponder={() => true}
    onResponderRelease={doSomethingFunction}
>
    <FlatList
        data={someData}
        renderItem={renderItemComponent}
    />
</View>