使用 React Native 隐藏状态栏

IT技术 reactjs react-native statusbar
2021-05-18 09:17:06

使用 React Native 开发时如何隐藏 iOS 或 Android 的状态栏?我已经导入了 StatusBar,但我相信还有 StatusBarIOS 和用于 Android 的 StatusBar。

4个回答

想出了如何隐藏状态栏。首先,StatusBarIOS 已弃用,因此您需要导入StatusBar,然后在渲染顶部简单地包含此代码片段:

<StatusBar hidden />

响应本机文档 StatusBar

您可以从组件的任何位置调用此方法:

import React, { Component } from 'react';
import { StatusBar } from 'react-native';

class MyComponent extends Component {

    componentDidMount() {
       StatusBar.setHidden(true);
    }
}

编辑:

这将隐藏整个应用程序的状态栏,而不仅仅是在您的特定组件中,要解决此问题,您可以执行以下操作:

componentWillUnmount() {
     StatusBar.setHidden(false);
}

或者从其他地方用 false 调用这个方法。

对于隐藏

StatusBar.setHidden(true, 'none');

展示

StatusBar.setHidden(false, 'slide');

我更喜欢导入StatusBar组件并将true传递隐藏props的简单方法...

很简单:

import React from "react";
import { StatusBar, View, Text } from "react-native";

class App extends React.Component {

    render() {
       return (
        <View>
          <StatusBar hidden={true} />
          <Text>Hello React Native!</Text>
        </View>
       )
    }
}