mirror of
https://github.com/zhigang1992/react-native.git
synced 2026-04-26 13:25:51 +08:00
Open souce the Android Dialog module
Summary: public The `DialogModule` requires `android.support.v4.app.FragmentManager` which means every app that wants to use Dialogs would need to have its Activity extend the legacy `android.support.v4.app.FragmentActivity`. This diff makes the `DialogModule` work with both the Support `FragmentManager` (for AdsManager & potentially other fb apps) and the `android.app.FragmentManager` (for new apps with no legacy dependencies). Also wrap the native module in the same `Alert` API that we have on iOS and provide a cross-platform example. In my opinion the iOS Alert API is quite nice and easy to use. We still keep `AlertIOS` around because of its `prompt` function which is iOS-specific and also for backwards compatibility. Reviewed By: foghina Differential Revision: D2647000 fb-gh-sync-id: e2280451890bff58bd9c933ab53cd99055403858
This commit is contained in:
committed by
facebook-github-bot-5
parent
fe86771a22
commit
3a3af8a385
@@ -14,14 +14,14 @@
|
||||
var RCTAlertManager = require('NativeModules').AlertManager;
|
||||
var invariant = require('invariant');
|
||||
|
||||
type AlertType = $Enum<{
|
||||
export type AlertType = $Enum<{
|
||||
'default': string;
|
||||
'plain-text': string;
|
||||
'secure-text': string;
|
||||
'login-password': string;
|
||||
}>;
|
||||
|
||||
type AlertButtonStyle = $Enum<{
|
||||
export type AlertButtonStyle = $Enum<{
|
||||
'default': string;
|
||||
'cancel': string;
|
||||
'destructive': string;
|
||||
@@ -32,20 +32,19 @@ type AlertButtonStyle = $Enum<{
|
||||
*
|
||||
* Optionally provide a list of buttons. Tapping any button will fire the
|
||||
* respective onPress callback and dismiss the alert. By default, the only
|
||||
* button will be an 'OK' button
|
||||
* button will be an 'OK' button.
|
||||
*
|
||||
* ```
|
||||
* AlertIOS.alert(
|
||||
* 'Foo Title',
|
||||
* 'My Alert Msg',
|
||||
* [
|
||||
* {text: 'OK', onPress: () => console.log('OK Pressed!')},
|
||||
* {text: 'Cancel', onPress: () => console.log('Cancel Pressed!'), style: 'cancel'},
|
||||
* {text: 'OK', onPress: () => console.log('OK Pressed')},
|
||||
* {text: 'Cancel', onPress: () => console.log('Cancel Pressed'), style: 'cancel'},
|
||||
* ]
|
||||
* )
|
||||
* ```
|
||||
*/
|
||||
|
||||
class AlertIOS {
|
||||
static alert(
|
||||
title: ?string,
|
||||
|
||||
Reference in New Issue
Block a user