我正在创建一个react本机应用程序,它显示FlatList中的帖子列表 . 帖子可以是文字或图片 . 我有两个要求,我正在努力实现:
-
滚动:我希望用户能够毫不费力地滚动帖子列表,即帖子应该忽略滚动事件,以便它们由父FlatList处理 .
-
选择/点击:我希望用户能够选择文本或点击帖子中的链接,即帖子应该处理onPress()事件 .
如果我将帖子渲染为FlatList中的普通视图,文本选择和单击按预期工作,但滚动效果不佳 . 这是因为帖子有时会捕获滚动事件 . 包含大图片的帖子的行为更糟糕 . 我可以通过在帖子中添加 pointerEvents="none"
来解决滚动问题 . 但是,在这种情况下,将无法再在帖子中选择文本或单击任何链接 .
有没有办法实现平滑滚动,同时仍然能够选择文本并点击每个帖子中的链接?我只在Android上测试了这个 .
1 回答
要禁用滚动,你可以使用prop scrollEnabled= ,这是考虑到Flatlist inherets Scrollview道具,如react docs.中所述
要使文本可单击,请使用touchable,TouchableHighlight,TouchableOpacity,TouchableNativeFeedback .