Open cpojer opened 5 years ago
This issue was originally created by @CyberMew as facebook/react-native#24083.
Integrated RN single view into existing iOS project. Doing a push presentation (not modal).
Existing iOS screen is using light content already (i.e. status bar text color is white).
light content
When going back to native app, status bar color always changes back to default (i.e. status bar text colour is black) when I render StatusBar.
default
StatusBar
**1. Make sure your native app status bar at this point in time is already lightContent.
lightContent
Present a RN view controller via push. Notice how the status bar is still light-content (i.e. white text) because of the StatusBar code (see code).
light-content
Pop the RN view controller. Observe the color change bug in the status bar.**
Now remove the RN code with StatusBar. Reload your app.
Repeat Step 1-3. Observe how the status bar text colour is not changed anymore as expected!
I did not test if the problem exists if presenting modally, but I am pretty sure the issue is with StatusBar.
Status bar color should remain unchanged when using StatusBar and closing RN view controller.
Render code:
Note that nativeCloseVC is a function that calls native to pop this view controller.
nativeCloseVC
return ( <View style={{ flex: 1 }}> <Touchable onPress={nativeCloseVC} style={{ flex: 1 }}> <View style={{ flex: 1, backgroundColor: "#ff0000" }} /> </Touchable> {/* This is the problematic code!! */} <StatusBar barStyle={"light-content"} /> </View> );
React Native Environment Info: System: OS: macOS 10.14.3 CPU: (12) x64 Intel(R) Core(TM) i7-8700B CPU @ 3.20GHz Memory: 10.29 GB / 32.00 GB Shell: 3.2.57 - /bin/bash Binaries: Node: 10.15.1 - /usr/local/bin/node npm: 6.9.0 - /usr/local/bin/npm SDKs: iOS SDK: Platforms: iOS 12.1, macOS 10.14, tvOS 12.1, watchOS 5.1 IDEs: Xcode: 10.1/10B61 - /usr/bin/xcodebuild npmPackages: react: 16.6.1 => 16.6.1 react-native: 0.57.7 => 0.57.7 npmGlobalPackages: react-native-cli: 2.0.1
This issue was originally created by @CyberMew as facebook/react-native#24083.
Some Info
Integrated RN single view into existing iOS project. Doing a push presentation (not modal).
Existing iOS screen is using
light content
already (i.e. status bar text color is white).🐛 Bug Report
When going back to native app, status bar color always changes back to
default
(i.e. status bar text colour is black) when I renderStatusBar
.To Reproduce
**1. Make sure your native app status bar at this point in time is already
lightContent
.Present a RN view controller via push. Notice how the status bar is still
light-content
(i.e. white text) because of theStatusBar
code (see code).Pop the RN view controller. Observe the color change bug in the status bar.**
Now remove the RN code with
StatusBar
. Reload your app.Repeat Step 1-3. Observe how the status bar text colour is not changed anymore as expected!
I did not test if the problem exists if presenting modally, but I am pretty sure the issue is with
StatusBar
.Expected Behavior
Status bar color should remain unchanged when using
StatusBar
and closing RN view controller.Code Example
Render code:
Note that
nativeCloseVC
is a function that calls native to pop this view controller.Environment