react-native-simpledialog-android

React Native Android module to use Android's AlertDialog - same idea of AlertIOS

Usage no npm install needed!

<script type="module">
  import reactNativeSimpledialogAndroid from 'https://cdn.skypack.dev/react-native-simpledialog-android';
</script>

README

react-native-simpledialog-android

React Native Android module to use Android's AlertDialog - same idea of AlertIOS

npm version npm downloads npm licence

Installation

npm install react-native-simpledialog-android --save

Add it to your android project

  • In android/settings.gradle
...
include ':RNSimpleAlertDialogModule', ':app'
project(':RNSimpleAlertDialogModule').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-simpledialog-android/android')
  • In android/app/build.gradle
...
dependencies {
    ...
    compile project(':RNSimpleAlertDialogModule')
}
  • Register Module >= 0.17 && <= 0.29(in MainActivity.java)
  • NOTE: >= RN 29 split MainActivity.java into MainActivity.java and MainApplication.java. So make modifications below to MainApplication.java
import com.burnweb.rnsimplealertdialog.RNSimpleAlertDialogPackage;  // <--- import

public class MainApplication extends Application implements ReactApplication {
  ......

  @Override
  protected List<ReactPackage> getPackages() {
    return Arrays.<ReactPackage>asList(
            new MainReactPackage(),
            new RNSimpleAlertDialogPackage()); // <------ add this line to your MainApplication class
  }

  ......

}

Usage

This module are very similar to AlertIOS native module, and only works with alert method (prompt method aren't implemented yet).

The main difference are in the way that you declare buttons. In Android you can declare up to 3 buttons and in this module you have to declare what type the button is. A button can be SimpleAlert.POSITIVE_BUTTON, SimpleAlert.NEGATIVE_BUTTON or SimpleAlert.NEUTRAL_BUTTON.

Example

var SimpleAlert = require('react-native-simpledialog-android');

function _onPress(event) {
    console.log(event);
};

SimpleAlert.alert(
    'Please read me!',
    'Want a warning alert?', [
      { type: SimpleAlert.POSITIVE_BUTTON, text: 'Yes', onPress: _onPress },
      { type: SimpleAlert.NEGATIVE_BUTTON, text: 'No', onPress: _onPress },
      { type: SimpleAlert.NEUTRAL_BUTTON, text: 'Neutral', onPress: _onPress },
    ]
);

License

MIT