Вы можете осуществлять прокрутку напрямую, используя функцию scrollTo
компонента ScrollView
. Это очень полезно для поддержания позиции прокрутки на основе индекса. Используйте ее, как показано ниже.
moveBody = index => {
this.scrollRef.scrollTo({
x: index * width,
animation: false
})
}
<ScrollView pagingEnabled ref={node=>this.scrollRef=node}>
...
</ScrollView
Не забудьте получить правильную страницу, убедитесь, чтовся ширина экрана обложки. Так что эффект щелчка может быть достигнут с помощью следующего нажатия кнопки.
Индекс можно получить, разделив смещение на ширину экрана.
index=e.nativeEvent.contentOffset.x/width
Вы можете получить доступ к e
из ScrollView
события прокрутки, например onScroll/onMomentumEnd....
Вы также можете отключить жест прокрутки, назначив false
для scrollEnabled
prop.