反应本机。如何在垂直对齐中心的行中放置两个具有不同fontSize的文本

时间:2018-11-18 20:01:50

标签: react-native react-native-stylesheet

我需要将两个Text组件分别与不同的fontSize对齐并垂直居中。我已经关注https://snack.expo.io/@troublediehard/dmVuZ2

enter image description here

export default class App extends React.Component {
  render() {
    return (
      <View style={styles.container}>
        <View style={styles.row}>
          <Text style={styles.text1}>Font size 20</Text>
          <Text style={styles.text2}>Font size 14</Text>
        </View>
      </View>
    );
  }
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    justifyContent: 'center',
    paddingTop: Constants.statusBarHeight,
    backgroundColor: '#ecf0f1',
    padding: 8,
  },
  row: {
    flexDirection: 'row',
    backgroundColor: 'red',
  },
  text1: {
    fontSize: 20,
    backgroundColor: 'blue',
  },
  text2: {
    fontSize: 14,
    backgroundColor: 'green',
  },
});

2 个答案:

答案 0 :(得分:1)

您需要将alignItems: 'center'添加到styles.row

row: {
    flexDirection: 'row',
    alignItems: 'center',
    backgroundColor: 'red',
},

答案 1 :(得分:0)

对于尚未找到解决方案的任何人,您必须将文本包装在另一个Text标记内:

<View style={styles.container}>
  <View style={styles.row}>
    <Text>
      <Text style={styles.text1}>Font size 20</Text>
      <Text style={styles.text2}>Font size 14</Text>
    </Text>
  </View>
</View>