Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
158 of 196 menu
◀ ▶

Метод event

Метод event класса Animated строит обработчик для нативного события. Карта аргументов указывает, какое поле события пишет в Value. Частый случай - прокрутка ScrollView и поле смещения.

Синтаксис

const onScroll = Animated.event( [{ nativeEvent: { contentOffset: { y: scrollY } } }], { useNativeDriver: true }, );

Параметры

Параметр Описание
карта аргументов Массив с путями от события к анимируемым значениям.
конфиг Настройки вроде useNativeDriver для связанной анимации.

Пример

Давайте привяжем вертикальную прокрутку к значению смещения:

import { useRef } from 'react'; import { Animated, View, Text } from 'react-native'; export default function App() { const scrollY = useRef(new Animated.Value(0)).current; const onScroll = Animated.event( [{ nativeEvent: { contentOffset: { y: scrollY } } }], { useNativeDriver: false }, ); return ( <Animated.ScrollView onScroll={onScroll} scrollEventThrottle={16}> <View style={{ height: 120, justifyContent: 'center' }}> <Text>abcde</Text> </View> <View style={{ height: 400 }}> <Text>12345</Text> </View> </Animated.ScrollView> ); }

На экране при прокрутке значение scrollY растет вместе со смещением списка.

Смотрите также

  • метод diffClamp,
    который ограничивает приращение при прокрутке
  • компонент Animated.ScrollView,
    который принимает обработчик прокрутки
  • компонент ScrollView,
    который прокручивает дочерние элементы
  • метод interpolate,
    который переводит смещение в другой диапазон
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить