せずに登録します。基本クラスには、@Subscribe
と、FragmentA
という2つのメソッドはありませんが、いずれにしても登録する必要があります。の場合は、を追加します。EventBus:私は(... <code>FragmentA</code>、<code>FragmentB</code>)<code>onStart()/onStop()</code>で<code>EventBus</code>へ/登録解除自体、およびそれを継承するいくつかの子クラスを登録<code>BaseFragment</code>クラスを持っている任意の@Subscribeアノテーション付きメソッド
私はSquareUp's Ottoを使用した場合と同様に、起こることは何も除いて、任意の@Subscribe
アノテーション付きメソッドを持っていますが、EventBusが例外をスローしないオブジェクトに登録した場合:
org.greenrobot.eventbus.EventBusException: Subscriber class com.company.app.FragmentA and its super classes have no public methods with the @Subscribe annotation
なぜ例外をスローしますか?つまり、アプリの実行を妨げるものではありません。
は醜いtry ... catch
にBaseFragment
でregister()/unregister()
呼び出しをラップする唯一のソリューションですかクリーナー回避策はありますか?
あなたの方法は、パブリックでなければなりませんすべてチェックしてください。 –
@oguzhand注意深く読んでみると、 '@ Subscribe'アノテーションを持つメソッドがまったくないことがわかります。 – Flawyte
ベースフラグメントにダミーの注釈付きメソッドを実装できますか? – lelloman