React Native 获取状态栏高度,实现沉浸式状态栏

开发 App 的时候,经常须要作出沉浸式状态栏的效果。javascript

在 iOS 平台,默认就是沉浸式的,View 的内容会从屏幕顶部开始绘制,若不进行处理,就会被状态栏覆盖。所以能够手动获取状态栏的高度,用样式留出状态栏的空间,避免内容被状态栏覆盖。java

import { NativeModules } from 'react-native';

const { StatusBarManager } = NativeModules;

// iOS Only
StatusBarManager.getHeight(statusBarHeight => {
  console.log(statusBarHeight)
});
复制代码

不过,在 Android 平台,默认又不是沉浸式的。须要以下操做才能达到沉浸式效果。react

<StatusBar translucent={ true } backgroundColor="transparent" />
复制代码

在 Android 平台,获取状态栏高度就简单多了。react-native

import { StatusBar } from 'react-native';

const statusBarHeight = StatusBar.currentHeight;
复制代码
相关文章
相关标签/搜索