Skip to content
This repository has been archived by the owner on Oct 14, 2020. It is now read-only.

Closing React Native view controller with StatusBar will reset status bar font color #16

Open
cpojer opened this issue Mar 21, 2019 · 0 comments

Comments

@cpojer
Copy link
Contributor

cpojer commented Mar 21, 2019


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 render StatusBar.

To Reproduce

  1. Use the code below.

1. Make sure your native app status bar at this point in time is already lightContent.
2. 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).
3. Pop the RN view controller. Observe the color change bug in the status bar.

  1. Now remove the RN code with StatusBar. Reload your app.
  2. 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.

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>
    );

Environment

  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
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

1 participant