2016-07-23 60 views
5

我正在尝试创建一个以它为中心并填充屏幕80%的边框的视图。我想出了这个:如何在原生反应中按百分比定义宽度?

<View style={{flexDirection: 'row'}}> 
    <View style={{flex: .1}} /> 
    <View style={{flex: .8, borderWidth: 2}} /> 
    <View style={{flex: .1}} /> 
</View> 

它的工作,但似乎非常详细。

是否有更好的(更简洁)的方式来创建一个视图,该视图是屏幕宽度的一定百分比并且居中在页面中?

回答

6

UPDATE:

从开始作出反应原生版本0.42,我们现在有width整整一个百分点的支持,heightpadding等,查看完整列表和例子在这里: https://github.com/facebook/react-native/commit/3f49e743bea730907066677c7cbfbb1260677d11

旧方法:

考虑使用Dimensions,如:

import Dimensions from 'Dimensions'; 

,然后在元素的样式:

width: Dimensions.get('window').width/100 * 80, 

工作例如:https://rnplay.org/apps/4pdwlg

+0

我能'进口{尺寸}从“反应天然的”' - 不知道什么改变或如果只有一种以上的导入方式。 – Brendan