在React Native中垂直对齐文本

时间:2019-10-30 11:45:55

标签: javascript css reactjs react-native

https://en.wikipedia.org/wiki/Strictfp我想使我的文字在图片中这样。但是我的文字没有垂直居中。如何实现?

到目前为止,我所做的是

<Fragment>
     <HeaderMain navigation={navigation}/>
     <View style={styles.subheader}>
       <Text style={styles.topText}>Заказы</Text>
     </View>
</Fragment>

样式

container: {
    flex: 1,
    paddingHorizontal: 8,
    paddingVertical: 7,
    backgroundColor: '#E5E5E5',
},
subheader:{
    height: 55,
    backgroundColor: '#ffffff',
    flexDirection: 'column',
},
topText:{
    fontWeight: "bold",
    fontSize: 17,
    lineHeight:21,
    fontFamily: MONREGULAR,
    marginLeft: 16,
    justifyContent: 'center',
    alignItems: 'center',
},

4 个答案:

答案 0 :(得分:1)

您不应在justifyContent中使用alignItemsText。您应该在View中使用它。还给lineHeight和fontSize相同的值。像这样;

subheader:{
    height: 55,
    backgroundColor: '#ffffff',
    flexDirection: 'column',
    justifyContent: 'center',
},

topText:{
    fontWeight: "bold",
    fontSize: 17,
    lineHeight: 21,
    fontFamily: MONREGULAR,
    marginLeft: 16,
},

答案 1 :(得分:0)

尝试一下 subheader应该是display:flexflex-direction:column中的 topText应该有justify-content:space-around

subheader:{
    height: 55,
    backgroundColor: '#ffffff',
    flexDirection: 'column',
    display: flex;
}

topText:{
    fontWeight: "bold",
    fontSize: 17,
    lineHeight:21,
    fontFamily: MONREGULAR,
    marginLeft: 16,
    justifyContent: 'space-around'
}

答案 2 :(得分:0)

alignItems和justifyContent用于调整视图中的组件。如果您想要的是将内容居中放置在文本中,则应使用:textAlign,就您而言,我认为您应该使用:

textAlign: "center"

答案 3 :(得分:-1)

subheader:{
  height: 55,
  backgroundColor: '#ffffff',
  flexDirection: 'column',
  justifyContent: 'center',
  alignItems: 'center',
},

topText:{
    fontWeight: "bold",
    fontSize: 17,
    lineHeight: 21,
    fontFamily: MONREGULAR,
    marginLeft: 16,
    justifyContent: 'center',
    alignItems: 'center',
},