각 이미지의 너비 높이를 설정하여 이미지 그리드를 직접 만들고 렌더링 할 수 있습니다.
예를 들어, 1 행에 3 개의 이미지가 필요합니다. 크기를 사용하여 창 너비를 가져 와서 3으로 나눌 수 있습니다.
const windowWidth = Dimensions.get('window').width;
var IMAGES_PER_ROW = 3;
calculatedSize(){
var size = windowWidth/IMAGES_PER_ROW
return {width: size, height: size}
}
그런 다음 이미지를 연속으로 렌더링합니다. 당신이 margin: 1
같은 styles.item
에서 원하는처럼
renderRow(images) {
return images.map((uri,i) =>{
return(
<Image key={i} style={[styles.item, this.calculatedSize()]} source={{uri: uri}} />
);
})
}
renderImagesInGroupsOf(count) {
return _.chunk(IMAGE_URLS, IMAGES_PER_ROW).map((imagesForRow,i) => {
return (
<View style={styles.row} key={i}>
{this.renderRow(imagesForRow)}
</View>
)
})
}
당신은 이미지 그리드 여백을 설정할 수 있습니다.
전체 예를 here
감사합니다. 이 트릭을 할 것! – Ricky