2017-01-27 10 views
0

私は正常にintegrated react native in existing projectを持っています。私のネイティブアプリでは、react-native画面を起動するボタンを持つ画面があります。既存のプロジェクトでネイティブの反応ネイティブの起動後ネイティブのアプリケーションに戻る

Androidで、私はBackAndroid.exitApp()の助けを借りて前の画面に戻ることができます。 iOSで同じ機能をどのように達成できますか?

+0

iOSアプリは、ユーザーが閉じていない限り、自分で閉じるようになっていないそこに配置することができますので、お使いのコントローラでbackPressed()を定義しますそれら。手動でアプリを閉じると、アプリがアプリストアから拒否される可能性があります。 –

+0

チュートリアル[既存アプリとの統合](https://facebook.github.io/react-native/docs/integration-with-existing-apps.html)をご覧ください。最初の画面には2つのボタンがあり、プレイゲームボタン(1番目のボタン)は '反応ネイティブ'画面を起動し、 '反応ネイティブ'を正常に起動した後に最初の画面に戻る方法はありません。 –

答えて

1

ネイティブとRNの間でフローを統合するときは、ネイティブアプリにフックを追加してRNから呼び出すだけです。だからあなたの例では、私は

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

ような何かをするだろうし、その後ロジックは

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

ありがとう、私はこれを試してみるつもりです。 –

+0

これは、カスタムViewControllerを作成していることを意味しますか? facebookドキュメントはUIViewControllerを使用します。 – eugene

関連する問題