An easy-to-use collage layout component for rendering network images.
yarn add react-native-collage-layout| One Image | Two Images |
Three Images |
|---|---|---|
![]() |
![]() |
![]() |
This component is similar to how Facebook shows images in post.
import React from 'react';
import { StyleSheet } from 'react-native';
import CollageLayout from 'react-native-collage-layout';
const images = [
{
uri : "https://images.unsplash.com/photo-1678219718773-db0186c9ce63?ixlib=rb-4.0.3&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=1170&q=80",
aspectRatio : 1.5,
},
];
export default class App extends React.Component {
render() {
return (
<View>
<CollageLayout
spacing={2}
images={photos}
/>
</View>
)
}
}The component extends FlatList so all FlatList-props are valid.
| Name | Type | Default | Description |
|---|---|---|---|
| images | object |
None, required | An array of objects. Each object should contain uri and aspectRatio keys |
| onTapImage | function |
void |
Called when user taps on any image. Function returns image index |
| spacing | number |
1.5 | Spacing amount between images |
| layoutMinHeight | number |
23% of Screen | Minimum allowed height for layout |
| layoutMaxHeight | number |
70% of Screen | Maximum allowed height for layout |


