Puisque l'application des accessoires backgroundColor au composant StatusBar n'est pas appliquée sur IOS. J'ai besoin de définir la couleur d'arrière-plan de SafeAreaView pour obtenir l'effet que je veux, cela fonctionne bien, mais sur l'iPhone X, il aura la même couleur en bas de l'écran. Comment puis-je résoudre ce problème?
Prise en charge de l'iPhone X
En plus de la réponse de @ sdkcy , pour iPhone X le STATUS_BAR_HEIGHT ne peut pas avoir 20 ans.
Je l'ai résolu en installant la bibliothèque suivante:
https://www.npmjs.com/package/react-native-status-bar-height
Installer
npm install --save react-native-status-bar-height
Importer
import { getStatusBarHeight } from 'react-native-status-bar-height';
Et mettez à jour STATUS_BAR_HEIGHT comme ceci:
const STATUS_BAR_HEIGHT = Platform.OS === 'ios' ? getStatusBarHeight() : 0;
Enfin, j'ai également changé la hauteur de Android en 0, car cela affectait la hauteur de la barre de navigation, mais si cela fonctionne bien pour vous, vous pouvez la garder la même.
J'espère que cela t'aides.