EventBus Sticky粘性伝値イベントを使用します.
977 ワード
EventBus使用基本ステップ依存:implemenation‘org.greenrobot:eventbus:3.0’1.登録と登録解除
}/粘性伝値受信@Subscribe(threadMode=ThreadMode.MAIN、sticky=true)fun refsh HomeEvent(event:Event MessBen){
)
override fun onStart() {
super.onStart()
if(!EventBus.getDefault().isRegistered(true))
EventBus.getDefault().register(this)
}
override fun onStop() {
super.onStop()
EventBus.getDefault().unregister(this)
}
2.メッセージクラスの作成class EventMessBean{
var type:String=""
constructor(type: String) {
this.type = type
}
}
3.EventBus.get Default().post(EventMessBen(“1”))EventBus.get Default().postSticky(EventMessBen(“2”)/粘性伝値を送信します.stickyイベントeventBusはイベント送信キューにキャッシュされ、購読関係が既に存在すれば送信されますが、廃棄されません.次回また購読して、前回のイベントを引き続き受信します.解決方法:放送を受信した後にEventBus.get Default().removeStickyEventを破壊します.4.@Subscribe(threadMode=ThreadMode.MAIN)fun refresh HomeEvent(event:Event MessBen)を受信します.}/粘性伝値受信@Subscribe(threadMode=ThreadMode.MAIN、sticky=true)fun refsh HomeEvent(event:Event MessBen){
)