2017-10-18 70 views
2

我在该行增加了两个元素两个元素之间添加空间在同一行

render() { 
    return (
     <View style={{ flexDirection: 'row', justifyContent: 'center' }}> 
     <Icon 
     name='person' 
     color='#98999c' 
     onPress={this.handleClick.bind(this)} /> 
     <Text style={ styles.header }> 
      { 'User Name' } 
     </Text> 

     </View> 
     ) 
    } 

我怎么能增加他们之间的空间?

编辑:

我这儿也有理智的问题:

const AppNavigator = StackNavigator({ 
    Home: { 
    screen: AppDrawer, 
    navigationOptions: ({navigation}) => ({ 
     headerLeft: 
     <View style={{ flexDirection: 'row', justifyContent: 'space-between' }}> 
     <Icon name="menu" size={35} margin={30} padding={30} onPress={() => navigation.navigate('DrawerOpen') } /> 
     <ChangeLanguage style={{ margin: 30 , padding: 30}} /> 
     </View>, 
     headerRight: 
     <HeaderUserInformation />, 
    }) 
    } 
+1

使用填充/保证金的时候使用& NBSP像下面

<span>sample text &nbsp; <span> 

您还可以在dangerouslySetInnerHTML使用& NBSP? – linasmnew

+1

或者在这两个元素之间渲染一个“{”“}”? –

+0

@linasmnew剂量在第二个示例中不起作用 –

回答

0

选项1:

  • 加:justifyContent: 'space-between'View

选项2:

  • 添加padding/margin要么你Icon或您Text组件
+0

它在第一个例子中适用于我,但不适用于第二个例子。 ChangeLanguage组件的位置不会改变。 –

+0

你刚刚编辑的第二个例子似乎是一个自定义组件,你确定它需要风格作为道具吗? – linasmnew

0

你可以使用大括号就像两个双引号和单引号的空间,即一个表达式,

{" "} or {' '} 

你也可以使用ES6模板文字即

` <li></li>` or ` ${value}` 

您还可以在打印HTML内容

<div dangerouslySetInnerHTML={{__html: 'sample html text: &nbsp;'}} />