当我从flatlist
数据中删除一个项目时,我使用setState
来分配新的数据集。当我使用setState
时,我的单位列表滚动到顶部,这是我不想要的。我希望名单保持不变。我正在将以下代码用于平面列表:
<KeyboardAwareFlatList
keyboardShouldPersistTaps='always'
onScrollBeginDrag={() => Keyboard.dismiss()}
style={{ backgroundColor: 'white' }}
showsVerticalScrollIndicator={true}
data={stockItems}
extraData={this.state}
removeClippedSubviews={true}
maxToRenderPerBatch={100}
updateCellsBatchingPeriod={100}
initialNumToRender={100}
windowSize={7}
ref={(ref) => { this.flatlist = ref; }}
keyExtractor={(item, index) => index.toString()}
legacyImplementation={true}
renderItem={({ item }) =>{
return(
<StocktakeBagItem
item={item}
searchFields={this.state.fields}
onPress={(nItem)=>{
this.setState({
showStockItemEdit:true,
stockItemEdit: nItem
})
}}
realm={this.state.realm}
isEditBag={editStockBag}
language={language}
/>
)
}}/>
关于如何实现预期行为的任何建议?谢谢