在我的本机视图中,我有一个很大的长图像,底部有一些输入。当视图加载时,我希望它被“滚动”到页面底部-由于用户的某些事件,触发了我在网上可以找到的所有示例。
我想调用scrollToEnd(),但不确定在生命周期的哪个位置实际设置ref -任何人都有想法吗?
答案 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