我正在使用react-native-modalize
和flatListProps
,但我无法滚动flatList
,我尝试了panGestureEnabled={false}
,或删除height
样式,但都没有修复它,这是我的代码:
<Modalize
ref={ref}
children={children}
adjustToContentHeight={true}
onOverlayPress={closeModal}
onClosed={onCloseCallback}
HeaderComponent={renderHeader}
flatListProps={
listData?.length > 0
? {
data: listData,
renderItem: renderListItem,
ItemSeparatorComponent: renderSeparator,
keyExtractor: listKeyExtractor,
contentContainerStyle: dStyles.dataList,
}
: undefined
}
modalStyle={styles.borderRadius}
/>
const dStyles = StyleSheet.create({
dataList: {
height: 400,
},
});
我检查了listData
,数组有63个项目,但flatList
只呈现前9个项目。
2条答案
按热度按时间zynd9foi1#
通过向
flatListProps
添加以下 prop 修复:initialNumToRender: 10
maxToRenderPerBatch:10
并添加到
<Modalize
propdisableScrollIfPossible={false}
我不知道为什么,但
height
也需要删除。所以这是新代码:正如我提到的,我不能限制
FlatList
的高度,所以如果列表足够长,<Modalize
将全屏展开,这就是这个解决方案的局限性。y53ybaqx2#
此问题的原因是**adjustToContentHeight={true}**您可以通过执行以下操作来控制它