React-Native: центрируйте два текстовых компонента в одном компоненте View

Я пытаюсь центрировать два отдельных текста в их компонентах, я использую react-native и native-base. Я не могу центрировать текст по вертикали и горизонтали в самом текстовом компоненте. Я разделил их на цвета, чтобы увидеть проблему графически.

Элементы:

<View
  style = {{
    flex: 1,
    flexDirection: 'column',
    justifyContent: 'center',
    alignItems: 'center',
    backgroundColor: 'red'
  }}>
  <Text uppercase = {false} style = {styles.buttonTextLeft}>
    {title}
  </Text>
  <Text uppercase = {false} style = {styles.buttonTextLeftGreen}>
    {subTitle}
  </Text>
</View>

Стили:

buttonTextLeft: {
  fontFamily: 'Cuprum-Bold',
  fontSize: normalize(20),
  color: '#005f99',
  flex: 1,
  flexDirection: 'row',
  backgroundColor: 'yellow'
},
buttonTextLeftGreen: {
  fontFamily: 'Cuprum-Bold',
  fontSize: normalize(20),
  color: '#94cf1c',
  flex: 1,
  flexDirection: 'row',
  backgroundColor: 'green'
},

вы видите, что прокомментированы все тесты, которые я сделал. конечно, это глупо, но я еще не решил, у вас есть идеи? Спасибо.

SOLUTION

Для тех, у кого была такая же проблема, я ввожу код моей правильной и чистой текущей ситуации (без backgroundColor):

JS

<View
  style = {{
    flex: 1,
    flexDirection: 'column',
    justifyContent: 'center',
  }}
>
  <Text uppercase = {false} style = {styles.buttonTextLeft}>
    {title}
  </Text>
  <Text uppercase = {false} style = {styles.buttonTextLeftGreen}>
    {subTitle}
  </Text>
 </View>

Styles

buttonTextLeft: {
  fontFamily: 'Cuprum-Bold',
  fontSize: normalize(20),
  flex: 1,
  flexDirection: 'row',
  lineHeight: normalize(20),
  paddingVertical: normalize(4),
  color: '#005f99',
},
buttonTextLeftGreen: {
  fontFamily: 'Cuprum-Bold',
  fontSize: normalize(20),
  flex: 1,
  flexDirection: 'row',
  lineHeight: normalize(20),
  paddingVertical: normalize(4),
  color: '#94cf1c',
},
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Массив зависимостей в React
Массив зависимостей в React
Все о массиве Dependency и его связи с useEffect.
0
0
478
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Возможно, я не совсем понял вашу проблему, я полагаю, что ваша проблема в области green и yellow.

У меня была такая же проблема, и для решения этой проблемы я использовал line-height: 20 и paddingVertical: 5. Номера 20 и 5 являются образцами и предназначены для моего проекта. вместо них вы ставите свои числа.

Установка высоты строки текста на желаемую высоту поля должна работать. Например, если вы хотите, чтобы желтый прямоугольник был высотой 50, вы должны установить lineHeight: 50 в тексте.

Надеюсь, это поможет.

Другие вопросы по теме