- Pull to refresh
- Scroll to load more
- Multi-column
- Easy to set internal/external margins of grid
- Avoid FlatList's layout bug that sets wrong width to the last row item (cf. stackoverflow)
2 column | 3 column |
---|---|
![]() |
![]() |
Similar to FlatList.
<Grid
numColumns={3}
data={this.state.data}
keyExtractor={item => item.id.toString()}
renderItem={info => this.renderItem(info)}
onRefresh={() => this.onRefresh()}
refreshing={this.state.refreshing}
onEndReached={() => this.onEndReached()}
loadingMore={this.state.loadingMore}
marginExternal={4}
marginInternal={4}
/>
For details, see demo directory.
git clone git@github.com:morishin/react-native-infinite-scroll-grid.git
cd react-native-infinite-scroll-grid
yarn install
yarn run build-for-demo:watch
cd demo
yarn install
yarn run start
After the above steps, you can launch demo app on your device via expo. The app reloads automatically when the source code has changed.