首页 文章

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

提问于
浏览
0

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

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

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

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

有没有办法实现平滑滚动,同时仍然能够选择文本并点击每个帖子中的链接?我只在Android上测试了这个 .

1 回答

  • 0

    要禁用滚动,你可以使用prop scrollEnabled= ,这是考虑到Flatlist inherets Scrollview道具,如react docs.中所述

    要使文本可单击,请使用touchable,TouchableHighlight,TouchableOpacity,TouchableNativeFeedback .

相关问题