我已将FlatList放在父屏幕上。在列表项上单击,将弹出另一个子屏幕。我当然使用StackNavigator来堆叠它们。关闭子屏幕并返回父屏幕后,由于列表已滚动,因此我之前单击的列表项消失了。我不想只是禁用后面屏幕列表上的滚动,这也让我找不到执行该操作的方法。但我也想完全禁用屏幕后方的任何手势,就像应该自然的那样。
这是最简单的复制错误的方法。预先感谢您的所有帮助
App.js
const App = createStackNavigator({
Test1 : { screen : Test1 },
Test2 : { screen : Test2 },
});
export default App;
Test.js
class Test1 extends Component{
render() {
var test = [];
for(var i = 0; i < 100; i++) test.push(i);
return (<FlatList
data = {test}
renderItem = {
({item}) => <Button
onPress = () => this.props.navigation.navigate('Test2')
title = {'' + item}/>
}
/>);
}
}
class Test2 extends Component{
render() {
return (<View></View>);
}
}
module.exports = {Test1, Test2};