Я пытаюсь использовать FlatList с пользовательскими кнопками «вперед» и «назад» для прокрутки по currentIndex + n (в моем случае 3). Я могу прокрутить до заданного индекса, но я хочу иметь возможность прокручивать по заданному количеству, а не до определенной точки. Вот что я сделал до сих пор.
<FlatList
ref={flatListRef}
horizontal
style={{ width: '100%' }}
contentContainerStyle={{ alignItems: 'center' }}
showsHorizontalScrollIndicator={false}
data={[__ADD_PROFILE, ...profilesIds]}
keyExtractor={id => id}
renderItem={({ item }) =>
<AddProfileCard onPress={() => navigate(CREATE_PROFILE_SCREEN)}>
<ExplorerIconView icon={assets.explorer.icons.info} />
<ApplyText fontFamily={'eightBit'}>apply now</ApplyText>
</AddProfileCard>
}
/>
Вот кнопки, которые в данный момент прокручивают до индексов и 3. Я не хочу прокручивать до индекса 3. Я хочу прокрутить по currentIndex + 3.
// forward button
<Button
onPress={() => flatListRef.current.scrollToIndex({ index: 3 })} // Looking for currentIndex+3
/>
//Back button
<Button
onPress={() => flatListRef.current.scrollToIndex({ index: 0 })} // Looking for currentIndex-3
/>