如何在FlatList组件中禁用水平滚动

时间:2019-02-10 18:23:22

标签: react-native

我的应用程序中具有以下FlatList组件,但是即使将水平prop设置为false,它仍然可以让我在滚动时水平移动屏幕。

 <FlatList
    data={props.data}
    renderItem={({ item }) => props.renderItem(item)}
    horizontal={false}
    contentContainerStyle={{
      flex: 1,
      justifyContent: "center",
      alignItems: "center",
    }}
  />

2 个答案:

答案 0 :(得分:0)

据我了解,您想水平显示项目列表,但不应滚动列表。

如果是这种情况,则在平面清单中使用: horizontal={true} scrollEnabled={false}

答案 1 :(得分:0)

听起来您的FlatList是要垂直滚动,但也要水平滚动,因此您想防止水平滚动。

使用FlatList的directionalLockEnabled属性,完全可以锁定水平或垂直滚动​​。该道具继承自ScrollView,您可以在此处了解更多信息:https://reactnative.dev/docs/scrollview

注意:如果用户有意水平滚动,他们仍然可以水平滚动。该道具的作用是在用户开始滚动时将其锁定在垂直轴或水平轴上。