如何解决选择项目后如何保持滚动位置反应原生平面列表
找到答案——与在某些项目周围设置样式组件有关
每当我有一个很长的列表并且我向下滚动以选择一个项目时,选择后,它会跳回到顶部。怎样才能做到选择后屏幕不变化?
当我试图深入研究这个问题时,我得到了这个问题的搜索结果,但在添加新项目或如何实现无限滚动时,这不是这里的情况。
我尝试为 flatlist 分配一个引用,并在通过选择一个项目触发操作后,滚动到最后保存的位置,但这不会改变任何内容。
<FlatList
contentContainerStyle={{paddingBottom: 10}}
data={stores as Stores[]}
renderItem={({item}): JSX.Element => (
<TouchableOpacity onPress={(): void => setState(item)}>
<Text>{item}</Text>
</TouchableOpacity>
)}
ItemSeparatorComponent={(): JSX.Element => <ItemSeparator />}
keyExtractor={(item): string => item.id.toString()}
ListHeaderComponent={
<ListHeader />
}
/>
解决方法
这与我有一个自定义组件保存在另一个文件中的事实有关,我在该文件中将此值作为子项传递。它最终重新渲染并刷新了页面!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。