[英]OnEvent cast incorrect event Object using EventBus
我在Activity (BaseActivity)
和Fragment (BaseFragment)
上都注冊了EventBus
。 因此,我使用以下方法捕獲事件:在BaseActivity
和BaseFragment
我具有相同的代碼:
public void onEvent(Object object) {
// do nothing
}
在從BaseFragment
extended
子fragment (A)
,我BaseFragment
有一個XYZEvent
事件,並且我希望此方法被調用:
public void onEvent(XYZEvent event) {
// my logic, not called :(
}
但事實並非如此。 我已經調試, BaseActivity
和BaseFragment
中的onEvent都被調用了。 因此,我如下更改了fragment (A)
:
public void onEvent(Object event) {
if(event instanceof XYZEvent) {
// my logic
// after changed this block code is called (~_~), why???
}
}
叫。 因此,我想知道onEvent(XYZEvent event)
未觸發時會錯過什么? 但是onEvent(Object event)
做到了。 似乎返回的事件轉換錯誤,我的XYZEvent
被轉換為Object
。
P / S:我使用此庫compile 'de.greenrobot:eventbus:2.4.0'
並且XYZEvent包含一個Serializable
對象
好的,這是我的錯誤。 我在使用onEvent方法,該方法已經竊取了我的XYZEvent。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.