2017-01-27 2 views
0

Ich habe erfolgreich integrated react native in existing project. In meiner nativen App habe ich einen Bildschirm mit einer Schaltfläche, die react-native Bildschirm starten.Zurück zur nativen App nach dem Start der Reaktion native in bestehenden Projekt

In Android kann ich mit Hilfe von BackAndroid.exitApp() zum vorherigen Bildschirm zurückkehren. Wie kann ich dieselbe Funktionalität in iOS erreichen?

+0

iOS-Apps sollen nicht auf ihrem eigenen schließen, wenn der Benutzer schließt Sie. Wenn Sie eine App manuell schließen, wird Ihre App möglicherweise vom App Store abgelehnt. –

+0

Wenn Sie das folgende Tutorial [Integration mit vorhandenen Apps] (https://facebook.github.io/react-native/docs/integration-with-existing-apps.html) betrachten. Der erste Bildschirm hat zwei Buttons, der Play Game Button (1. Button) startet den "reactive-native" Bildschirm und es gibt keine Möglichkeit, nach erfolgreichem Start von 'react-native' zum ersten Bildschirm zurückzukehren. –

Antwort

1

Wenn ich Integrationen zwischen nativen und RN fließen lasse ich einfach einen Haken zurück in meiner nativen App und rufe das von RN. Also in Ihrem Beispiel würde ich so etwas wie

onBackButtonPress() { 
    if (Platform.OS === 'ios') { 
    NativeModules.SomeController.backPressed() 
    } 
    else { 
    BackAndroid.exitApp() 
    } 
} 

tut und dann backPressed() in Ihrem Controller definieren, so Logik dort platziert werden kann

RCT_EXPORT_METHOD(backPressed) { 
    // logic to go back e.g. pop view controller or dismiss modal 
} 
+0

Danke, ich werde es versuchen. –

+0

Bedeutet dies, dass Sie einen benutzerdefinierten ViewController erstellen? während das Facebook-Dokument UIViewController verwendet. – eugene

Verwandte Themen