SafeAreaView 放在背景后不占满整个屏幕

SafeAreaView does not take the whole screen after placing on the background

我正在使用 RN 0.59。每次我将应用程序置于后台然后立即重新打开它时,SafeAreaView 不会占据整个屏幕。

但是,如果我将应用程序置于后台并在一段时间后(大约 3 秒)重新打开它,它工作正常。

这是我在 SafeAreaView 上的片段

...
const SafeAreaViewUI = ({children}) => {
  return (
      <SafeAreaView style={styles.container}>
        <View style={styles.content}>
          { children }
        </View>
      </SafeAreaView>
  );
};

...
export default SafeAreaViewUI;

我的造型

container: {
    flex: 1,
    backgroundColor: Platform.OS === 'android' ? blurple : null,
    paddingTop: Platform.OS === 'android' ? StatusBar.currentHeight : 0,
  },
  content: {
    flexGrow: 1,
    color: text,
    backgroundColor: white,
  }

对此有什么见解吗?

这对我有用。

const SafeAreaViewUI = ({children}) => {
  const [ height, setHeight ] = useState(0)
  return (
      <SafeAreaView 
        onLayout={() => {
          if (Platform.OS === 'android') {
            setHeight(StatusBar.currentHeight || 0);
          }
        }}
        style={[styles.container, { paddingTop: height }]}>
        <View style={styles.content}>
          { children }
        </View>
      </SafeAreaView>
  );

如果还有其他可能的答案。请 post 在这里。 谢谢!