How to align text to right in react native
Hi guys, In this article, we are going to learn about How to align text to right in react-native, Align View component and Align Text component is different because style props are different for View and a Text component. React-native provide Text style props which are textAlign let’s see with an example so that you will get a better understanding we are going to display two Text component on-screen and first is left-aligned by default and second is right align
1. Create a new project
Create a new project using the following command.
react-native init projectName
2. Import the following components
import React, { Component } from 'react';
import { View, StyleSheet, Text } from 'react-native';
3. Start with UI design
I have placed two Text components horizontally by adding flexDirection row to parent View component as you can see in below code, then create a different stylesheet for Text and with textAlign to right and flex: 1 to right text component and flex: 1 is important in this situation, so I have added inline style props textAlign to right props, and added a background color just for understanding of views and components
<View style={styles.container}>
<View style={styles.subContainer}>
<View style={{flexDirection:'row'}}>
<Text style={[styles.textStyle,{backgroundColor:'blue'}]}>Left Align</Text>
<Text style={[styles.textStyle,{backgroundColor:'red',textAlign:'right'}]}>Right Align</Text>
</View>
<View style={{flexDirection:'row'}}>
<Text style={{fontSize: 18, textAlign:'right', flex:1}}>textAlign:'right',{'\n'} flex:1</Text>
</View>
</View>
</View>
Add above code in your return method in render and check stylesheet below
container: {
flex: 1,
backgroundColor: '#FFFFFF',
alignItems: 'center',
justifyContent: 'center'
},
subContainer:{
width: 300,
height: 500,
borderWidth:1,
borderColor: "black"
},
textStyle:{
fontSize: 25,
color:'white',
flex:1
}
4. textAlign props
There are some other textAlign style props properties available as follows:
- left: Used to align the text component to the left-hand side.
- right: align text to the right-hand side (make sure to add flex: 1).
- center: It align text component to the center (make sure to add flex: 1).
- auto: It align text automatically.
- justify: only supports in iOS.
5. Full source code
import React, { Component } from 'react';
import { View, StyleSheet, Text } from 'react-native';
export default class Home extends Component {
render() {
return (
<View style={styles.container}>
<View style={styles.subContainer}>
<View style={{flexDirection:'row'}}>
<Text style={[styles.textStyle,{backgroundColor:'blue'}]}>Left Align</Text>
<Text style={[styles.textStyle,{backgroundColor:'red',textAlign:'right'}]}>Right Align</Text>
</View>
<View style={{flexDirection:'row'}}>
<Text style={{fontSize: 18, textAlign:'right', flex:1}}>textAlign:'right',{'\n'} flex:1</Text>
</View>
</View>
</View>
);
}
}
const styles = StyleSheet.create({
container: {
flex: 1,
backgroundColor: '#FFFFFF',
alignItems: 'center',
justifyContent: 'center'
},
subContainer:{
width: 300,
height: 500,
borderWidth:1,
borderColor: "black"
},
textStyle:{
fontSize: 25,
color:'white',
flex:1
}
});
6. Output
Thank you 🙂


