Socket
Socket
Sign inDemoInstall

react-native-sync-scrollview

Package Overview
Dependencies
0
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    react-native-sync-scrollview

A simple and fully customizable React Native component that sync multiple scrollviews with different sizes.


Version published
Weekly downloads
3
decreased by-72.73%
Maintainers
1
Install size
16.6 kB
Created
Weekly downloads
 

Readme

Source

React Native Sync ScrollView

npm version Platform

Component for React Native which allows to synchronize scroll of multiple ScrollViews which can have different length. When you scroll one of inner ScrollViews, then others will scroll on same percentage position so scroll speed will be different, depends on their size.

Small component built using Typescript and React Hooks, so need react-native 0.59+.

Examples in examples folder and on Expo https://expo.io/@eugnis/projects/react-native-sync-scrollview-example

React Native Sync ScrollView Example

Expo snack with preview here: https://snack.expo.io/@eugnis/react-native-sync-scrollview

Installation

npm i react-native-sync-scrollview --save

or

yarn add react-native-sync-scrollview

Basic Usage

React Native Sync ScrollView Example

To create horizontal Synchronized ScrollViews with 3 rows and with 20 +- 10 custom components each.

// Create Array of Arrays with items (range function from lodash)
const rowItems: JSX.Element[][] = range(3).map((rowI) =>
  range(Math.random() * 20 + 10).map((index) => (
    <View key={`row${rowI}-${index}`}>
      <Text>Test</Text>
    </View>
  ))
);
// Styles for View container for ScrollViews
const styles = StyleSheet.create({
  scrollSync: {
    height: 150,
    margin: 10,
    padding: 2,
    borderRadius: 10,
    borderWidth: 1,
    borderColor: "gray",
  },
});

// use ScrollSync component in render
<ScrollSync rowItems={rowItems} containerStyle={styles.scrollSync} />;

Configuration

PropertyTypeDefaultDescription
rowItemsJSX.Element[][]-Array of arrays with your custom JSX.Element components
containerStylestyle objectundefinedStyle for View container which holds inner ScrollViews
scrollViewsStylestyle objectundefinedStyle for inner ScrollViews
typehorizontal or verticalhorizontalChoose Horizontal or Vertical type, default is Horizontal

Keywords

FAQs

Last updated on 01 Mar 2021

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc