Как узнать состояние прокрутки (вверх или вниз) в FlatList? - PullRequest
0 голосов
/ 23 декабря 2018

Как узнать состояние прокрутки в FlatList?Как прокрутка вверх или прокрутка вниз?Я хочу знать состояние прокрутки вверх или вниз, чтобы показать или скрыть заголовок в FlatList.

Ответы [ 3 ]

0 голосов
/ 23 декабря 2018

На самом деле, компонент FlatList может использовать реквизиты ScrollView, поэтому вы можете использовать приведенный ниже код для определения вашей Y позиции полосы прокрутки FlatList:

<FlatList onScroll={(e) => console.log(e.nativeEvent.contentOffset.y)} ...

Вы должны записать ее в некоторую переменнуюи сравните его с последним изменением, тогда вы поймете, что полоса прокрутки перемещается вниз или вверх.

Подсказка : начинается с нуля.

0 голосов
/ 23 декабря 2018

Используйте свойство onScroll, как показано ниже.( Официальный )

<ScrollView onScroll={this._onScroll} />


_onScroll = (event) {
    console.log(event.nativeEvent.contentOffset.y);
},

И для гарантии получения значения последнего кадра прокрутки необходимо установить свойство scrollEventThrottle={16}.

0 голосов
/ 23 декабря 2018

Обычно заголовок называется StickyHeader.И уже есть опция с именем stickyHeaderIndices, которая использует индекс child для создания липкого заголовка.

Официальный

<ScrollView
  stickyHeaderIndices={[1]}
>
...