初始加载时滚动到ScrollView的底部

时间:2019-04-15 23:03:16

标签: react-native

在我的本机视图中,我有一个很大的长图像,底部有一些输入。当视图加载时,我希望它被“滚动”到页面底部-由于用户的某些事件,触发了我在网上可以找到的所有示例。

我想调用scrollToEnd(),但不确定在生命周期的哪个位置实际设置ref -任何人都有想法吗?

2 个答案:

答案 0 :(得分:1)

以这种方式使用scrollToEnd。它将移至ScrollView

的底部
   <ScrollView
    ref={ref => this.scrollView = ref}
    onContentSizeChange={(contentWidth, contentHeight)=>{        
        this.scrollView.scrollToEnd({animated: true});
    }}>

答案 1 :(得分:0)

我不清楚您的问题,但

使用react-native Image组件,我们有onLoad属性。我认为这就是您想要的。 尝试类似的东西:

<Image source={{uri...}} onLoad={(e)=>this.handleImageLoaded(e)}/>

然后在handleImageLoaded方法中,可以根据代码对某些引用使用scrollToEnd()。

还有其他有用的道具,例如onLoadStart / End check

https://facebook.github.io/react-native/docs/image

或者如果您只是在等待视图渲染,然后滚动 为此,我认为componentDidAppear()生命周期方法,如果使用wix的react-native -navigation

或带有反应导航 组件渲染周期的willFocus,willBlur,didFocus和didBlur事件。 https://reactnavigation.org/docs/en/navigation-prop.html#addlistener-subscribe-to-updates-to-navigation-lifecycle