Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 400,000 packages pre-installed, including react-native-loading-spinner-overlay with all npm packages installed. Try it out:

require("react/package.json"); // react is a peer dependency. require("react-native/package.json"); // react-native is a peer dependency. var reactNativeLoadingSpinnerOverlay = require("react-native-loading-spinner-overlay")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

react-native-loading-spinner-overlay v1.0.1

The only pure React Native Native iOS and Android loading spinner (progress bar indicator) overlay

React Native Loading Spinner Overlay

code style styled with prettier made with lass license npm downloads

Table of Contents



npm install react-native-loading-spinner-overlay


yarn add react-native-loading-spinner-overlay


See the example App.js file for an example implementation.


cancelableBooleanfalseAndroid: If set to false, it will prevent spinner from hiding when pressing the hardware back button. If set to true, it will allow spinner to hide if the hardware back button is pressed.
colorString"white"Changes the spinner's color (example values are red, #ff0000, etc). For adjusting the contrast see overlayColor prop below.
animationString (enum) none, slide, fade"none"Changes animation on show and hide spinner's view.
overlayColorStringrgba(0, 0, 0, 0.25)Changes the color of the overlay.
sizeString (enum) small, normal, large"large"Sets the spinner's size. No other cross-platform sizes are supported right now.
textContentString""Optional text field to be shown.
textStyleStyleSheet-The style to be applied to the <Text> that displays the textContent.
visibleBooleanfalseControls the visibility of the spinner.
indicatorStyleStyleSheetundefinedAdditional styles for the ActivityIndicator to inherit
customIndicatorElementundefinedAn alternative, custom component to use instead of the default <ActivityIndicator />
childrenElementundefinedChildren element(s) to nest inside the spinner

Recommended Implementation

We recommend that you follow two rules when implementing this component.

  1. Integrate it inside the parent-most/top-level/root component in your app

  2. Wrap usage of actions after attempting to stop the spinner with setTimeout to avoid the non-stop spinner issue:

    this.setState({ spinner: false });
    setTimeout(() => {
      Alert.alert('Oops!', err.message);
    }, 100);


Nick Baugh
Spencer Snyder
Luciano Lima
George Savvidis
Sandro Machado
Ben Sutter
Ivan Kuznetsov
Darren Camp
Rigo B Castro
Raj Kissu
Ivan Pusic
Antonio Grass
Vijay Chouhan
Jacob Lee
Matt Labrum


MIT © Nick Baugh

RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free