0

找到答案 - 与围绕某些项目的样式组件有关

每当我有一个长列表并且我向下滚动以选择一个项目时,选择后它会跳回顶部。我怎样才能使它在选择后,屏幕不改变?

当试图对此进行更多研究时,我得到了这个问题的搜索结果,但是当添加新项目或如何实现无限滚动时,这不是这里的情况。

我尝试将 ref 分配给平面列表,并在通过选择一个项目触发动作后,滚动到最后保存的位置,但这并没有改变任何内容。

<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 />
                }
            />
4

1 回答 1

0

这与我有一个自定义组件保存在另一个文件中的事实有关,我将这个值作为孩子传递。它最终重新渲染并刷新了页面!

于 2021-01-25T19:27:31.463 回答