<StatusBar>

This component controls the app status bar.

PropsanimatedbarStylehidden Platform-specific PropsbackgroundColor Androidtranslucent AndroidnetworkActivityIndicatorVisible iOSshowHideTransition iOS
Methods.popStackEntry().pushStackEntry().replaceStackEntry().setBarStyle().setHidden() Platform-specific Event PropssetTranslucent() AndroidsetBackgroundColor() AndroidsetNetworkActivityIndicatorVisible() iOS

RESETRUNFULL
import React, { useState } from 'react';import { Button, Platform, SafeAreaView, StatusBar, StyleSheet, Text, View }
                                                                                                     from 'react-native';const STYLES = ['default', 'dark-content', 'light-content'];const TRANSITIONS = ['fade', 'slide', 'none'];const App = () => {
  const [hidden, setHidden] = useState(false);
  const [statusBarStyle, setStatusBarStyle] = useState(STYLES[0]);
  const [statusBarTransition, setStatusBarTransition] = useState(TRANSITIONS[0]);
  const changeStatusBarVisibility = () => setHidden(!hidden);
  const changeStatusBarStyle = () => {
    const styleId = STYLES.indexOf(statusBarStyle) + 1;
    if (styleId === STYLES.length) {
      setStatusBarStyle(STYLES[0]);
    } else {
      setStatusBarStyle(STYLES[styleId]);
    }
  };
  const changeStatusBarTransition = () => {
    const transition = TRANSITIONS.indexOf(statusBarTransition) + 1;
    if (transition === TRANSITIONS.length) {
      setStatusBarTransition(TRANSITIONS[0]);
    } else {
      setStatusBarTransition(TRANSITIONS[transition]);
    }
  };
  return (
    <SafeAreaView style={styles.container}>
      <StatusBar animated={true} backgroundColor="#61dafb" hidden={hidden}
               barStyle={statusBarStyle} showHideTransition={statusBarTransition} />
      <Text style={styles.textStyle}>
        StatusBar Visibility:{'\n'}
        {hidden ? 'Hidden' : 'Visible'}
      </Text>
      <Text style={styles.textStyle}>
        StatusBar Style:{'\n'}
        {statusBarStyle}
      </Text>
      {Platform.OS === 'ios' ? (
        <Text style={styles.textStyle}>
          StatusBar Transition:{'\n'}
          {statusBarTransition}
        </Text>
      ) : null}
      <View style={styles.buttonsContainer}>
        <Button title="Toggle StatusBar" onPress={changeStatusBarVisibility} />
        <Button title="Change StatusBar Style" onPress={changeStatusBarStyle} />
        {Platform.OS === 'ios' ? (
          <Button title="Change StatusBar Transition" onPress={changeStatusBarTransition} />
        ) : null}
      </View>
    </SafeAreaView>
  );};const styles = StyleSheet.create({
  container: {flex: 1, justifyContent: 'center', backgroundColor: '#ECF0F1'},
  buttonsContainer: {padding: 10},
  textStyle: {textAlign: 'center', marginBottom: 8}});export default App;

It is possible to have multiple <StatusBar> components mounted at the same time. The props will be merged in the order the <StatusBar> components were mounted.