在 RecyclerView.Adapter 中清除 CompositeDisposable 的位置

Where to clear CompositeDisposable in RecyclerView.Adapter

假设我们的 RecyclerView.Adapter 中有一些 Disposable,我们将它们添加到 CompositeDisposable
哪个 Adapter 方法回调是 clear() CompositeDisposable 的最佳选择?

目前我在 onDetachedFromRecyclerView 上做了。我想确定这有多正确。

如果能提供适配器的代码就更容易回答了。 一般来说,Disposable 应该根据你的业务逻辑和包含生命周期的组件来处理。

我还要说最好不要在 RecyclerView 适配器内部使用 Rx。好处如下:

  • 适配器逻辑保持简单和同步。
  • 您在开发适配器时无需考虑可能的生命周期或多线程问题。
  • Rx 流总是分配大量内存,因此(如果我们谈论 RecyclerView)将它们放在错误的位置会导致性能问题。

所以,我建议将 Rx 流移动到 Presenter/ViewModel 或类似组件中。