将FlatList嵌套在ScrollView中是否会阻碍其性能?

时间:2019-08-25 13:38:43

标签: react-native

我有以下布局设置:

<ScrollView>
   <MyCustomView />
   <FlatList />
</ScrollView>

此刻它正在按我预期的方式工作,即用户滚动经过一个自定义视图,然后点击其中包含许多项的平面列表,然后可以继续向下滚动。

我担心的是,这样的布局不是FlatList的目的,即它是否仍仅根据需要呈现项目?

2 个答案:

答案 0 :(得分:1)

是的,我认为这不会在这里造成很多问题。

由于Flatlist也是一种滚动视图,因此在这里不会引起太多问题。

如果将其保留在平面列表中并修复必须使用stickyIndi​​ces来显示的视图,这将是一种更好的方法,您可以将其添加到平面列表中,而不会出现任何渲染问题或性能障碍。

<FlatList
  data={ this.state.FlatListItems }
  ItemSeparatorComponent={ this.FlatListItemSeparator}
  renderItem={ ({item}) => (
    <Text
      style={styles.FlatList_Item}
      onPress={this.GetItem.bind(this, item.key)}> {item.key}
      </Text>
  )}
  ListHeaderComponent={this.Render_FlatList_Sticky_header}
  stickyHeaderIndices={[0]}
/>

答案 1 :(得分:0)

滚动视图中的平面列表会产生某种性能问题,因此要解决此问题,您需要注意一些事项,以获取更多信息,请参见下面的链接

https://medium.com/sanjagh/how-to-optimize-your-react-native-flatlist-946490c8c49b