2017-11-03 8 views
1

2行リストを作成したい。これは私が、私はこのコード2行のリストビューを作成する

<FlatList 
    style={styles.list}    //<-- This Line 
    numColumns={2}         //<-- And this one 
    data={[{key: 'row1'}, {key: 'row2'},{key: 'row3'},{key: 'row4'}]} 
    renderItem={({item}) => 
    <View> 
    <Text>{item.key}</Text> 
    </View> 
    } /> 

でflatListを使用しようとした

enter image description here

達成したい結果であるしかし、私は、私もしようとした

enter image description here

彼の結果を得ましたこのコードで各項目の幅を画面幅の半分に設定します

<View style={{width: width /2}}> 
<Text>{item.key}</Text> 
</View> 

ただし、デバイスの向きが変わると機能しません。

私が達成したいのは、画面の幅を持つ仮想テーブルを作成し、各セルの先頭にテキストを配置することです。このようなもの

+------------------------------+-----------------------------+ 
| item 1.      | item 2.      | 
+------------------------------+-----------------------------+ 
| item 3.      | item 4      | 
+------------------------------+-----------------------------+ 
| item5      | item 6      | 
+------------------------------+-----------------------------+ 

あなたはそれを達成する方法を知っていますか?

+0

[this](https://stackoverflow.com/questions/29394297/listview-grid-in-react-native)をご覧ください。 –

+0

はい私はそれを見ましたが、それは私が問題を解決するのに役立たなかった – user567

答えて

0

renderItem支柱内の親ビューにflex:1を追加するだけです。ように

<FlatList 
    style={{flex: 1}} //whatever style you had   
    numColumns={2}         
    data={[{key: 'row1'}, {key: 'row2'},{key: 'row3'},{key: 'row4'}]} 
    renderItem={({item}) => 
     <View style = {{flex: 1}}> 
      <Text>{item.key}</Text> 
     </View> 
    } 
/> 
関連する問題