1

スライド タブ レイアウトのように設定されたビューページャーに 3 つのフラグメントがあります。あるフラグメントから別のフラグメントに文字列値を渡す必要があります。

最初に、ここでの回答のようにインターフェイスを設定しようとしましたが、フラグメント間 でデータを渡す方法が提案されていましたが、うまくいきませんでした。フラグメント A がメイン アクティビティに通知し、次にメイン アクティビティがフラグメント B に通知するという考え方です。

だから私は別の答えを探しました

http://android-er.blogspot.com/2012/06/communication-between-fragments-in.html

古いアクションバーの代わりにGoogleのslidingtablayoutを使用してビューページャーを設定したため、コードで同じ機能を使用できなかったため、有望に見えましたが機能しませんでした。

今、私はEventBusに出くわしました。そして、これが私の答えだと本当に思います。以下の両方の回答が示唆するように、コードに追加しました。何もクラッシュしませんが、何も機能しません。

私はlogcatでこれを見つけます:

D/Event: イベント クラス tk.abestudying.atob.TextChangedEvent にサブスクライバーが登録されていません D/Event: イベント クラス de.greenrobot.event.NoSubscriberEvent にサブスクライバーが登録されていません

ViewPager でのフラグメント間の通信

SlidingTabLayout タブ間の通信

これが私のコードです:リンクが削除されました

助けてください。私は何時間も解決策を試してきましたが、困惑しています。ありがとうございました。

編集:慎重にコードを書き直すことで機能しました。

4

1 に答える 1

2

@Subscribe注釈がないようです。によるとREADME、購読方法は次のようになります。

@Subscribe public void onEvent(AnyEventType event) {/* Do something */};

于 2016-02-20T22:54:22.213 に答える