我覺得EventBus確實非常好,把我們從序列化中解脫出來,即使不序列化也能在界面間傳遞數據,但是有個前提,那是兩個界面都已經存在並且注冊了EventBus。而即將啟動的下一個Activity就非常尷尬地不方便使用EventBus。當我們想給即將啟動的界面傳遞參數時,一般都是用intent,但是復雜參數是需要序列化才能夠傳遞的,如果你實在不想序列化,可能你就得像這樣做了:
調用startActivity啟動界面時先不用調用EventBus的post去傳參。而是在當前界面的onStop中調用post去傳遞你想傳的復雜參數。為什么是onStop里面呢?因為這個方法是在下一個界面成功啟動后調用的。這樣你就繞過序列化了。