簡體   English   中英

OnEvent使用EventBus投放了不正確的事件對象

[英]OnEvent cast incorrect event Object using EventBus

我在Activity (BaseActivity)Fragment (BaseFragment)上都注冊了EventBus 因此,我使用以下方法捕獲事件:在BaseActivityBaseFragment我具有相同的代碼:

public void onEvent(Object object) {
    // do nothing
}

在從BaseFragment extendedfragment (A) ,我BaseFragment有一個XYZEvent事件,並且我希望此方法被調用:

public void onEvent(XYZEvent event) {
    // my logic, not called :(
}

但事實並非如此。 我已經調試, BaseActivityBaseFragment中的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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM