我正在使用gorhom/react-native-bottom-sheet
我所面临的问题是:
我在BottomSheet
里面有一个BottomSheet
,我可以在ios上滚动FlaLlist
,但是它不能在安卓上工作。
发布于 2022-02-14 07:12:52
经过大量的研究,我能够通过使用BottomSheetFlatList
而不是来自同一个包的FlatList
来解决这个问题。
import { BottomSheetFlatList } from "@gorhom/bottom-sheet";
<BottomSheetFlatList
ref={ref}
initialNumToRender={3}
keyExtractor={(item) => item?.id}
showsVerticalScrollIndicator={false}
maxToRenderPerBatch={3}
windowSize={7}
data={dat}
renderItem={renderItem}
/>
通过这样做,它也开始在android上运行得很好。
但是,我也希望我的Flatlist
在特定事件上使用ref自动滚动。
经过一些研究,并由于@gorhom/bottom-sheet
的伟大文档。我在文档的故障排除部分找到了解决方案。
但是作为一名开发人员,StackOverflow
是我们为每一个问题准备的第一个地方。所以,我决定在这里贴出答案。
答案
由于使用TapGestureHandler & PanGestureHandler包装内容和句柄,任何手势交互都不会像预期的那样起作用。
要解决此问题,请使用ScrollView & FlatList from本机-手势-处理程序提供的响应-本机。
import {
ScrollView,
FlatList
} from 'react-native-gesture-handler';
在这里找到原来的答案- https://gorhom.github.io/react-native-bottom-sheet/troubleshooting
https://stackoverflow.com/questions/71108260
复制相似问题