Bird
Raised Fist0
React Nativemobile~5 mins

Text component in React Native

Choose your learning style10 modes available
Introduction

The Text component shows words or sentences on the screen. It helps users read information in your app.

To display a title or heading on a screen.
To show instructions or descriptions to users.
To label buttons or input fields.
To display messages or alerts.
To show any static or dynamic text content.
Syntax
React Native
import { Text } from 'react-native';

export default function App() {
  return (
    <Text>Some text here</Text>
  );
}
The Text component must be inside a parent component like View or SafeAreaView.
You can style Text using the style prop to change color, size, and font.
Examples
Shows simple text on the screen.
React Native
<Text>Hello World</Text>
Text with blue color and bigger font size.
React Native
<Text style={{color: 'blue', fontSize: 20}}>Blue Text</Text>
Shows dynamic text using JavaScript variables.
React Native
<Text>{`Count: ${count}`}</Text>
Sample App

This app shows two pieces of text centered on the screen. The first is a bold title, and the second is a smaller description.

React Native
import React from 'react';
import { SafeAreaView, Text, StyleSheet } from 'react-native';

export default function App() {
  return (
    <SafeAreaView style={styles.container}>
      <Text style={styles.title}>Welcome to My App</Text>
      <Text style={styles.description}>This is a simple text example.</Text>
    </SafeAreaView>
  );
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    justifyContent: 'center',
    alignItems: 'center',
    backgroundColor: '#f0f0f0'
  },
  title: {
    fontSize: 24,
    fontWeight: 'bold',
    marginBottom: 10
  },
  description: {
    fontSize: 16,
    color: '#333'
  }
});
OutputSuccess
Important Notes

Always wrap Text components inside a container like View or SafeAreaView for layout control.

Use the style prop to make text readable and visually appealing.

Text components can contain nested Text components for mixed styles.

Summary

The Text component displays readable text in your app.

Use style to change how text looks.

Text can show static or dynamic content.

Practice

(1/5)
1. What is the primary purpose of the Text component in React Native?
easy
A. To create buttons for user interaction
B. To handle navigation between screens
C. To display readable text on the screen
D. To load images from the internet

Solution

  1. Step 1: Understand the role of Text component

    The Text component is designed to show text content in the app UI.
  2. Step 2: Compare with other components

    Buttons handle clicks, navigation manages screens, images show pictures, so they are different.
  3. Final Answer:

    To display readable text on the screen -> Option C
  4. Quick Check:

    Text component = display text [OK]
Hint: Text component always shows text content [OK]
Common Mistakes:
  • Confusing Text with Button
  • Thinking Text handles navigation
  • Using Text for images
2. Which of the following is the correct way to apply a style to a Text component in React Native?
easy
A. Hello
B. Hello
C. Hello
D. Hello

Solution

  1. Step 1: Identify correct style prop syntax

    React Native uses style={{key: value}} with double curly braces for inline styles.
  2. Step 2: Check each option

    Hello uses correct syntax. Options A, B, C have wrong prop names or wrong value formats.
  3. Final Answer:

    <Text style={{fontSize: 20}}>Hello</Text> -> Option D
  4. Quick Check:

    Style prop = double curly braces object [OK]
Hint: Use style={{key: value}} for styling Text [OK]
Common Mistakes:
  • Using 'styles' instead of 'style'
  • Passing style as string
  • Using array without brackets
3. What will be displayed on the screen when this code runs?
const name = 'Anna';
return <Text>Hello, {name}!</Text>
medium
A. Hello, {name}!
B. Hello, Anna!
C. Hello, name!
D. Syntax Error

Solution

  1. Step 1: Understand JSX expression inside Text

    Curly braces inside Text allow embedding JavaScript variables.
  2. Step 2: Substitute variable value

    The variable name is 'Anna', so it replaces {name} with 'Anna'.
  3. Final Answer:

    Hello, Anna! -> Option B
  4. Quick Check:

    JSX variable inside Text = replaced value [OK]
Hint: Use curly braces to show variables inside Text [OK]
Common Mistakes:
  • Showing variable name as string
  • Forgetting curly braces
  • Syntax errors in JSX
4. Identify the error in this React Native code snippet:
return <Text style={{fontSize: 18, color: 'blue'}}>Welcome</Text>;
medium
A. No error, code is correct
B. Extra semicolon after Text component
C. Missing closing tag for Text
D. Incorrect style object syntax

Solution

  1. Step 1: Check JSX syntax

    The Text component is properly opened and closed with correct style prop syntax.
  2. Step 2: Verify semicolon usage

    Semicolon after JSX return is allowed in JavaScript; no syntax error.
  3. Final Answer:

    No error, code is correct -> Option A
  4. Quick Check:

    Valid JSX with style and semicolon [OK]
Hint: JSX can end with semicolon; style object must be valid [OK]
Common Mistakes:
  • Thinking semicolon breaks JSX
  • Missing closing tag
  • Wrong style syntax
5. You want to display a greeting that changes based on the time of day inside a Text component. Which code correctly shows "Good morning" if before noon, otherwise "Good afternoon"?
hard
A. {new Date().getHours() < 12 ? 'Good morning' : 'Good afternoon'}
B. new Date().getHours() < 12 ? 'Good morning' : 'Good afternoon'
C. {if (new Date().getHours() < 12) 'Good morning' else 'Good afternoon'}
D. {new Date().getHours() < 12 && 'Good morning'}

Solution

  1. Step 1: Use JavaScript expression inside Text

    Curly braces allow embedding JS expressions like ternary operator.
  2. Step 2: Check syntax correctness

    {new Date().getHours() < 12 ? 'Good morning' : 'Good afternoon'} uses correct ternary syntax. new Date().getHours() < 12 ? 'Good morning' : 'Good afternoon' misses braces, so shows text literally. {if (new Date().getHours() < 12) 'Good morning' else 'Good afternoon'} uses invalid if-else inside JSX. {new Date().getHours() < 12 && 'Good morning'} uses logical operators incorrectly and shows nothing in the afternoon.
  3. Final Answer:

    <Text>{new Date().getHours() < 12 ? 'Good morning' : 'Good afternoon'}</Text> -> Option A
  4. Quick Check:

    Ternary inside Text with braces = correct [OK]
Hint: Use ternary operator inside braces for conditional Text [OK]
Common Mistakes:
  • Missing braces for JS expression
  • Using if-else directly inside JSX
  • Using && and || incorrectly
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard