组件设计思路:
通过观察LifeOwner(Activity)
的LifeCycle Event
,在ActivityonDestroy
时释放掉其所有的Disposable
使用方法:
在Activity与Fragment中
RxBus
.toObservable(SynEvent::class.java)
.subscribe {
...
}
.disposeOnDestroy(this)
项目中所有的Activity
都是继承自AppCompatActivity
。AppCompatActivity
本身就是一个LifeOwner
。
对于Fragment
,其本身也是LifeOwner
对象,使用方式同上。
在View中
RxBus
.toObservable(SynEvent::class.java)
.subscribe {
...
}
.disposeOnDestroy(context as AppCompatActivity)
对于依托于Activity
的View
来说,其Context
就是Activity(AppCompatActivity)
,所以这里直接做了强转。
那view
的context
一定是Activity
吗? 可以看这篇文章了解一下: