私の質問はHow to use CompositeDisposable of RxJava 2?と重複することがありますが、疑問をもう一度尋ねます。 は受け入れ答え私の場合はCompositeDisposableでdisposeとclearを呼び出す場合
// Using clear will clear all, but can accept new disposable
disposables.clear();
// Using dispose will clear all and set isDisposed = true, so it will not accept any new disposable
disposables.dispose();
によると、私は私の意見として(MVPで表示層)の断片を使用していますし、いくつかのシナリオでは、私がbackstackに活性な断片を追加し、実際にフラグメントを殺しませんその視点のみつまり、onDestroyView
のみが呼び出され、onDestroy
は呼び出されません。そして、後で私はバックスタックにある同じ断片に戻ることができるので、その見解だけが再作成されています。 私はサブスクリプションを保持しているBaseFragment
のメンバーとしてCompositeDisposable
を持っています。
私の質問は、clear
をCompositeDisposable
に、毎回onDestroyView
に電話する必要がありますか?ビューが再開されると、再びサブスクリプションを取ることができるようになりますか? onDestroy
のdispose
に電話してください。そうすれば、断片自体が破壊されたときに消耗品をもう取る必要はありませんか?
適切な処理方法が間違っている場合。 clear
とdispose
を呼び出す必要がある場合