React Native - 使FlatList中的视图忽略滚动事件但接受onPress事件

时间:2017-11-30 07:05:46

标签: react-native event-handling

我正在创建一个react本机应用程序,它显示FlatList中的帖子列表。帖子可以是文字或图片。我有2个要求,我正在努力实现:

  • 滚动:我希望用户能够毫不费力地滚动帖子列表,即帖子应该忽略滚动事件,以便由父FlatList处理。

  • 选择/点击:我希望用户能够选择文字或点击帖子中的链接,即帖子应该处理onPress()事件。

如果我将帖子渲染为FlatList中的普通视图,文本选择和单击按预期工作,但滚动效果不佳。这是因为帖子有时会捕获滚动事件。包含大图片的帖子的行为更糟​​糕。我可以通过在帖子中添加pointerEvents="none"来解决滚动问题。但是,在这种情况下,将无法再在帖子中选择文本或点击任何链接。

有没有办法实现平滑滚动,同时仍然可以选择文字并点击每个帖子中的链接?我只在Android上测试过这个。

1 个答案:

答案 0 :(得分:0)

要禁用滚动,您可以使用道具 scrollEnabled = {false} ,这是考虑到Flatlist内容Scrollview道具,如react docs.

中所述

要使文字可点击,请使用一些touchable,TouchableHighlight,TouchableOpacity,TouchableNativeFeedback。