Реагировать на нативную прокрутку, отключить тянуть для обновления

Я использую прокрутку в React Native v0.44.2, и я хотел отключить обновление для обновления и генерировать только прокрутку моих представлений, есть ли другой способ сделать это без прокрутки?
Я видел какую-то старую версию , не знаю, недавно ли я ставил эту анимацию. Итак, мой код выглядит следующим образом:

render() {
    return (
      <View>
        <ScrollView>
          <View style={styles.box}>

          </View>
          <View style={styles.box}>

          </View>
          <View style={styles.box}>

          </View>
          <View style={styles.box}>

          </View>
          <View style={styles.box}>

          </View>
          <View style={styles.box}>

          </View>
        </ScrollView>

      </View>
    );
  }
}

и мои стили:

const styles = StyleSheet.create({

  box: {
    backgroundColor: 'blue',
    height: 300,
    width: 200,
    borderWidth: 5,
    borderColor: 'red'
  }
});

person Alan Russo    schedule 31.07.2017    source источник
comment
я думаю, что если вы просто используете прокрутку, реквизиты по умолчанию не используют pull для обновления, я попробовал ваш код, и pull для обновления отключен   -  person Rizal Sidik    schedule 31.07.2017
comment
вы можете найти ответ по этой ссылке   -  person mohammad shobeiri    schedule 20.11.2018


Ответы (3)


Я столкнулся с той же проблемой и решил ее, установив для свойства bounces значение false:

<ScrollView bounces={false} style={{ flex: 1 }}>
...
</ScrollView>

документы: https://facebook.github.io/react-native/docs/scrollview.html#bounces

person Maybelle Pacate    schedule 12.09.2018

изначально используйте const refreshing = false . Затем при вызове _onRefresh измените обновление с false на true и повторно инициализируйте содержимое scollview.

const refreshing = false ;
const data= [];

//your class definition
_onRefresh(){
        refreshing=true;
        this.props.clearYourData();
        data= [];
        refreshing=false;
    }

render(){
  return (
    <ScrollView refreshControl={
      <RefreshControl
        refreshing={refreshing}
        onRefresh={this._onRefresh.bind(this)}
        title="Loading..."
        />
       }
      />  >
     {data}
  </ScrollView>)
}
person Subhajit    schedule 18.08.2017

Здесь мы можем отключить анимацию вытягивания на Pull с помощью этого файла .

<ScrollView
refreshing={false}
>
**YOUR RENDER ITEM**
</ScrollView>

Я никогда не реализовывал это в прокрутке, но, возможно, это может вам помочь.

person ashutosh pandey    schedule 31.07.2017