2017-08-09 5 views
2

Ich möchte alle Bildschirme in meiner App unter der Statusleiste auf iOS und Android angezeigt werden, so würde ich entweder eine StatusBar Komponente hinzufügen oder eine paddingTop für alle meine Bildschirme.React Native vermeiden Statusleiste Überlappung auf allen Bildschirmen

Gibt es eine Möglichkeit, dies global zu tun? Wo ist die entsprechende Top-Level-Komponente, um die StatusBar in einer Redux-App hinzuzufügen? (zB welcher Teil von https://github.com/react-community/react-navigation/tree/master/examples/ReduxExample)?

Antwort

0

Sie können eine <NavigationContainer/> Komponente erstellen, die alle Ihre verschiedenen Seiten enthält, sodass Sie den Code StatusBar und den Füllcode nicht in jeder einzelnen Bildschirmkomponente duplizieren müssen.

habe ich ein Beispiel hier: https://snack.expo.io/SyaCeMOwW

Und nichts brauchen in Laufzeit Ihrer Navigationsstruktur oder redux Fluss zu ändern.

+0

Welche Komponente sollte ich in einer Redux Navigation App umschließen? Versucht https://github.com/react-community/react-navigation/blob/master/examples/ReduxExample/src/navigators/AppNavigator.js#L17 und https://github.com/react-community/react-navigation /blob/master/examples/ReduxExample/index.js#L19, beide funktionierten nicht (nichts rendert) – Avery235

+0

@ Avery235 Sie würden Ihren LoginScree, MainScreen, ProfileScreen in diesem Fall importieren, importieren Sie den NavigationContainer in diese Seitenkomponente und folgen Sie dem Beispiel, das ich zur Verfügung gestellt habe, um die Komponente dieser Seite darin zu setzen. – dotcomXY

+0

Dies funktioniert nicht, weil die React Navigation (die eine Navigationsleiste hat) um die Komponenten (LoginScreen usw.) – Avery235

Verwandte Themen