2017-04-01 7 views
0

フレックスボックスを使用して反応ネイティブでボックスの5x5グリッドを作成しようとしています。現在のところ、私のコードはグリッドの1行しか生成していないので、なぜか分かりません。ここで反応ネイティブフレックスボックススタイリングを使用してビューコンポーネントのグリッドを作成するバグ

import React, { Component } from 'react'; 
import { View, Text, StyleSheet } from 'react-native'; 

class Board extends Component { 
    render() { 
    return (
     <View style={styles.container}> 
     <View style={styles.rowContainer}> 
      <View style={styles.box}></View> 
      <View style={styles.box}></View> 
      <View style={styles.box}></View> 
      <View style={styles.box}></View> 
      <View style={styles.box}></View> 
     </View> 
     <View style={styles.rowContainer}> 
      <View style={styles.box}></View> 
      <View style={styles.box}></View> 
      <View style={styles.box}></View> 
      <View style={styles.box}></View> 
      <View style={styles.box}></View> 
     </View> 
     <View style={styles.rowContainer}> 
      <View style={styles.box}></View> 
      <View style={styles.box}></View> 
      <View style={styles.box}></View> 
      <View style={styles.box}></View> 
      <View style={styles.box}></View> 
     </View> 
     <View style={styles.rowContainer}> 
      <View style={styles.box}></View> 
      <View style={styles.box}></View> 
      <View style={styles.box}></View> 
      <View style={styles.box}></View> 
      <View style={styles.box}></View> 
     </View> 
     <View style={styles.rowContainer}> 
      <View style={styles.box}></View> 
      <View style={styles.box}></View> 
      <View style={styles.box}></View> 
      <View style={styles.box}></View> 
      <View style={styles.box}></View> 
     </View> 
     </View> 
    ); 
    } 
} 

const styles = StyleSheet.create({ 
    container: { 
    flex: 1, 
    flexDirection: 'column', 
    alignItems: 'flex-start', 
    }, 
    rowContainer: { 
    flex: 1, 
    flexDirection: 'row', 
    alignItems: 'flex-start', 
    }, 
    box: { 
    flex: 1, 
    height: 60, 
    backgroundColor: 'red', 
    borderWidth: 2, 
    borderColor: 'black', 
    } 
}); 

export default Board; 

出力です:

は、ここに私のコードです enter image description here

がどのように私は私のコード出力ボックスの5x5のグリッドすることができますか?

はフレックス削除あなた

+0

'container'と' rowContainer'ルールには 'display:flex'があるべきではないでしょうか?フレキシブルなコンテナである 'flex'も、何もしません。 – LGSon

+0

うん。興味深い質問です。また、この[シンプルフレックスボックスグリッドグリッド](https://github.com/abraztsov/ReactSimpleFlexGrid)を試してみてください。 –

答えて

0

ありがとう:私はあなたがcontainerrowContainerの上borderWidthと異なるborderColor Sを使用する場合は

0

は、それが役立つ理由は完全にはわからないけれどもrowContainerから1問題を修正しましたflexBoxが各親子コンポーネントをレンダリングする方法を視覚化し、よりよく理解してください。

関連する問題