Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 如何使React原生平面列表的ListHeaderComponent具有粘性?_Reactjs_React Native - Fatal编程技术网

Reactjs 如何使React原生平面列表的ListHeaderComponent具有粘性?

Reactjs 如何使React原生平面列表的ListHeaderComponent具有粘性?,reactjs,react-native,Reactjs,React Native,我有一个平面列表,故意比屏幕宽度宽 列表垂直滚动以查看每一行,并位于水平滚动视图中以访问屏幕外项目 ListHeaderComponent道具基本上是一个x轴标签,我想表现为一个“冻结的标题”;就像电子表格一样 如何使ListHeaderComponent具有粘性?您需要将prop设置为Flatlist作为stickyHeaderIndices={[0]} ListHeaderComponent:此道具将标题视图设置在平面列表的顶部 stickyHeaderIndices={[0]}:此道具将F

我有一个平面列表,故意比屏幕宽度宽

列表垂直滚动以查看每一行,并位于水平滚动视图中以访问屏幕外项目

ListHeaderComponent道具基本上是一个x轴标签,我想表现为一个“冻结的标题”;就像电子表格一样


如何使ListHeaderComponent具有粘性?

您需要将prop设置为
Flatlist
作为
stickyHeaderIndices={[0]}

ListHeaderComponent:此道具将标题视图设置在平面列表的顶部

stickyHeaderIndices={[0]}:此道具将
FlatList
0索引位置项设置为StickyHeader,您可以看到,我们已经将标题添加到
FlatList
中,因此标题现在处于0索引位置,因此默认情况下,它将使标题成为StickyHeader

<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]}
/>
(
{item.key}
)}
ListHeaderComponent={this.Render_FlatList_Sticky_header}
stickyHeaderIndices={[0]}
/>

stickyHeaderIndices={[0]}
将解决您的问题

item.id}
stickyHeaderIndices={[0]}
/>
此外,
stickyHeaderIndices
也可以是我们想要粘贴的索引数组。您甚至可以像这样设置许多索引:

item.name}
stickyHeaderIndices={[0,6,13]}
/>
当您继续滚动平面列表时,item0将是粘性的,然后被item6、item13替换

在RN FlatList文档中找不到stickyHeaderIndices。但是你可以在源代码中找到它<代码>虚拟化列表支持它


我通常将绝对标题放置在scrollview之外,以创建粘性标题效果。你有没有Raymond的例子?我无法想象怎么做。嗨,阿尔比。我终于回到这里,你的代码工作得很好!谢谢@天哪,太好了。乐意help@ErikGrosskurth是的。你很奇怪为什么我在RN文档中找不到这个属性?嗨@RY。这真是个好信息。谢谢你能在答案中加入一个小的代码示例吗<代码>stickyHeaderIndices={[0]}已由Albi发布。让人们确切地了解你在说什么是件好事。
 <FlatList
        data={this.state.data}
        renderItem={this.renderItem}
        keyExtractor={item => item.name}
        stickyHeaderIndices={[0, 6, 13]}
      />