1
我试图在反应本机中设置ListView的初始滚动位置。设置React Native ListView的初始滚动位置
现在,我这样做:
componentDidMount() {
let i = this.props.images.indexOf(this.props.current);
if(i != -1) {
this.refs.listView.scrollTo({ x:i*this.props.width, y:0, animated:false });
}
}
其中images
道具为ListView数据源中,current
道具,我想最初滚动到,和width
道具是组件的宽度。 (组件水平滚动)。
这是有效的,但是在初始渲染和调用componentDidMount
之间存在一个延迟,在列表滚动之前给我一个列表末尾的快照。
是否有设置列表的初始滚动位置的方法?或者更好的方式来摆脱这种闪光?
在iOS上,您可以使用'contentOffset'属性:https://facebook.github.io/react-native/docs/scrollview.html#contentoffset - 不确定什么是最好的x平台方式。 – jevakallio
谢谢!我没有看到。我想我忘了查看底层滚动视图的属性。把它作为答案,我会给它一张支票。 – nicholas