5
A
答えて
5
あなたはRCTDeviceEventEmitter.emit
方法は、ここで定義されて使用してJavaからイベントを送信することができますDeviceEventManagerModule.java#L27
はそれをReactApplicationContext
への参照を持っているあなたの最初の必要性を行うには、コール:代わりの
reactAppContext
.getJSModule(DeviceEventManagerModule.RCTDeviceEventEmitter.class)
.emit("keyboardWillShow1", null);
を「ヌル」のことができますJS側で受け取ったイベントに添付される任意のデータを送信します。
この例ではDeviceEventManagerModule.java#L49を参照してください。これはバックボタンイベントをJSに送信する方法です。
はその後、ライフサイクルイベントを受信するために登録することができ、あなたのカスタムモジュールを作成することですReactApplicationContext
別の方法をあなたが参照を持っていると仮定活動/onResume
からイベントをディスパッチするために同様のパターンを使用することができます。それは「タイミング」モジュールで行うのかを参照してください:
- 「タイミング」モジュールはLifecycleEventListener.javaインタフェース
- を実装モジュールが初期化されるとき、それはそのインターフェイスTiming.java#L126
- を通じてライフサイクルを受け取るために自分自身を登録しますが
onHostPause
とonHostResume
メソッドを実装することができますそのインターフェイスのスニペットを使用して、上記のイベントをディスパッチする
1
私は今react-native-activity-androidモジュールが達成すると信じていますs。
ありがとうございました!私はonPauseとonResumeを実装する方法を全面的に見てきました! –