問題タブ [greenrobot-eventbus]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1736 参照

android - 2 つのフラグメント間で通信しようとすると EventBus が機能しない

スライド タブ レイアウトのように設定されたビューページャーに 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 タブ間の通信

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

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

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

0 投票する
1 に答える
96 参照

android - ライブラリ CWAC CAM2 での撮影中に向きを変更するとクラッシュする

CommonsWare ライブラリを使用して nexus 5 Android 6 (ハンマー/ハンマー) でクラッシュしましたcwac:cam2

記録/写真撮影アクティビティの向きを変更したとき。バグは私のデバイスで体系的です。

スタックトレース :

サポートに感謝します。修正は非常に迅速に実装されます。

0 投票する
3 に答える
2284 参照

android - EventBus が新しいアクティビティにイベントを登録しない

オットーバスの例を実装しました。正常に動作しますが、アクティビティに 2 回目にアクセスしたときのみです。

たとえば、アプリを読み込んで秘密のメッセージ ボタンを押すと、アクティビティに移動しますが、トーストは表示されません。次に、[戻る] ボタンを押して MainActivity に戻り、[シークレット メッセージの表示] ボタンをもう一度押します。シークレット メッセージ アクティビティに移動すると、トーストが表示されます。イベントの登録を解除しないことでリークが発生したため、2 回目には機能することがわかりました。

ロジックについて私が見逃しているものはありますか?

主な活動:

秘密のメッセージ アクティビティ:

MakeMySecretMessageEvent:

イベントバス:

0 投票する
1 に答える
1141 参照

android - イベント バス インデックス

Green Robot Event Bus ライブラリのインデックスを追加する場所/時期:

ここで説明されているように?この onCreate() メソッドをランチャー アクティビティに配置しましたが、時々次のようになります。

どこが間違っていますか?どうもありがとう。

0 投票する
15 に答える
39180 参照

android - EventBus - サブスクライバ クラスとそのスーパー クラスには、@subscribe アノテーションを持つ public メソッドがありません

EventBus を使用して非同期ブロードキャストを他のクラスにポストする Android アプリケーションを作成していますが、実行中にエラーが発生します。

MainActivity.java

MapClass.java

LogCat には次のように表示されます。

なぜこうなった?私は何か間違ったことをしていますか?

0 投票する
1 に答える
686 参照

android - Greenrobot の Eventbus : 非同期タスク ジョブを呼び出す 2 つの Fragments が Eventbus を混乱させた

私は現在、 withFragmentsで作成されたものに取り組んでいます。GreenRobot の EventBus 3.0 を使用して、サービス クラスから作成した AsyncTask をいくつか返しました。ただし、これら 2 つのフラグメントは次々に作成されるため、イベントバスのポスト スティッキーが返されると、サブスクライブされたフラグメントが混同されます。私はstackoverflowを精査し、他の人が行ったことを行いました(たとえば、eventBusレジスタをonStartおよびOnStopに配置するなど)が、同様の問題さえ見当たりません。あなたが私を助けてくれることを願っています。ありがとう!ActivitiesFragmentPagerAdapter

これが私の2つのフラグメントです:(不要なコードの一部を省略しました)

1.ステータスフラグメント

2. ステータス サービス- ステータス フラグメントのサービス クラス

3. チャートフラグメント

4. 海図サービス

5.結果クラス

6.ステータスクラス

そのため、フラグメントが作成されるたびに、サービス クラスが呼び出され、サービス クラスがList<Status>と をList<Results>ほぼ次々にポストします。このため、それが言うところで混乱を引き起こしました

完全なスタック トレースは次のとおりです。

私のコードの何が問題なのか知っていますか? ありがとう。

0 投票する
1 に答える
10351 参照

android - RecyclerView RecyclerViewDataObserver が登録されていませんでした

RecyclerViewgreenrobot eventbusを使用してSyncAdapterいます。同期が終了し たら、メッセージ バスにメッセージを投稿します。SyncAdapter

私のターゲットクラスでは、次のことを行います。

そして、私init()はrecyclerview用のアダプターを作成して設定します:

イベントを受け取るフラグメントは、タブ ビューの内部にあります。したがって、複数のタブがあり、もちろん、正しいターゲットタブにないときにメッセージバスにSyncAdapter投稿することもありますが、登録されているため、アダプターを呼び出して作成し、に設定しようとします。その場合、次のエラーが発生します。EventMessagesRefreshedinit()RecyclerView

したがって、アダプターが登録されている場合にのみinit()、アダプターが必要です。RecyclerViewRecyclerViewDataObserver

どうやってやるの?