2016-08-14 75 views
6

在我的应用程序index.io.js里面只有1 ScrollView被包装在View下的render函数下。有时我可以滚动到ScrollView的最底部,并将屏幕保持在那里。然而,ScrollView会弹回到屏幕的顶部,有时无法停留在底部。反应本机ScrollView没有滚动到底部有时

有谁知道发生了什么?谢谢。

render() { 
    return <View style={{flex: 1}}> 
    <ScrollView> 
    <Text>234</Text> 
    <Text>234</Text> 
    <Text>234</Text> 
    <Text>234</Text> 
    // .... repeat so many times ... 
    </ScrollView> 
    </View> 
} 

PS:我的RN是0.28.0,iOS的部署目标为8.0

回答

4

记住ScrollViews必须有一个有界的高度为了工作,因为它们含有无界高度的孩子培养成一个有界的容器(通过滚动交互)。为了限制ScrollView的高度,可以直接设置视图的高度(不鼓励)或确保所有父视图的高度都是有界的。忘记将{flex: 1}转移到视图堆栈可能导致错误,元素检查器可以很容易地进行调试。

https://facebook.github.io/react-native/docs/scrollview.html

我想你应该风格分配给您的滚动视图使用Flex:1个属性。并创建一个contentContainerStyle以获得更好的设计。

14

对于阵营本地的新手和我一样:

了望使设置在滚动视图的contentContainerStyle属性,它基本上是告诉了滚动明确不滚动{flex:1}的错误,并希望它滚动, 因为这台内容高度到同一父母的框架这是滚动视图

+1

实际上解决了muy问题。有我的投票。 – EnriqueDev

+0

对我们来说,设置'contentContainerStyle = {{flex:1}}'实际上解决了我们的问题! – Cole

相关问题