对于我的React Native应用程序,我需要一个非常简单的表布局,如下所示:
row 1 column 1 | row 1 column 2
-------------------------------
row 2 column 1 | row 2 column 2
这可以通过Flexbox轻松实现:
<View style={{ flexDirection: 'column' }}>
<View style={{ flexDirection: 'row', flex: 1 }}>
<View style={{ flex: 1 }}>
row 1 column 1
</View>
<View style={{ flex: 1 }}>
row 1 column 2
</View>
</View>
<View style={{ flexDirection: 'row', flex: 1 }}>
<View style={{ flex: 1 }}>
row 2 column 1
</View>
<View style={{ flex: 1 }}>
row 2 column 2
</View>
</View>
</View>
这样,我得到的行是均匀间隔的,而在每一行中,我的行都是均匀间隔的。
但是,列中最终显示的内容大小可能会有很大差异。很有可能第二列中的所有内容都比第一列中的内容长得多。因此列宽必须灵活:
row 1 column 1 | row 1 column 2, long content that could
| even break to a second row
--------------------------------------------------------
row 2 column 1 | row 2 column 2, again the content is
| longer than in column 1
如何确保第1行中的列宽与第2行中的列宽匹配?换句话说,如何避免以下布局,因为我们根本没有列:
row 1 column 1 | row 1 column 2, long content
---------------------------------------------
row 2 column 1, a bit longer | row 2 column 2
我无法将嵌套从行中的列切换为行中的列,因为那样我将对行有相同的问题:
row 1 column 1 | row 1 column 2, long content that could
---------------------| even break to a second row
row 2 column 1 with |----------------------------------------
a bit longer content | row 2 column 2
换句话说,我需要CSS网格而不是CSS Flexbox。 React Native是否存在?