如何自动播放React Native ScrollView?

时间:2017-10-26 17:14:43

标签: react-native

我正在尝试让ScrollView自动播放并尝试以下实现:

componentDidMount() {
    this._interval = setInterval(() => {
        this._scrollViewX+=1;
        this._scrollView.scrollTo({x: this._scrollViewX, y: 0, animated: true}) },
      800
    );
  }

渲染():

           <ScrollView
            ref={(c) => {this._scrollView = c;}} 
            horizontal={true}>

            <View style={{paddingTop: '3%', flex: 1, width: 900,  flexDirection: "row", flexWrap: 'wrap'}}>
              {this.props.data.map((item, index) => {
                return (
                  <View 
                    style={{margin:4, marginHorizontal:12}}
                    key={index}>
                    <TextItemToggle
                      value={item}
                      onPress={(value)=>{this._onPressHandler(value)}}
                    />
                  </View>
                )
              })}
            </View>

          </ScrollView>

我还尝试了0.1的增量,16 ms间隔。他们似乎都有些迟钝。有没有更好的方法来实现这个?

1 个答案:

答案 0 :(得分:0)

您在ComponenDidMount()上执行此操作,该操作将考虑更新屏幕的整个组件生命周期。 I am surecan not control滚动的速度。您可以animated:truefalse,也就是它。