我使用SplashActivity
将数据从允许的数据发送到主要活动使用EventBus'spostSticky
方法,并根据该数据使用ViewPager
在MainActivity
中创建制表符。EventBus,是否有可能在onCreate中获得粘性事件?
到目前为止,它的工作很好,我可以在@Subscribe onEvent(Example data)
方法中设置ViewPager
。
例如:
@Subscribe(sticky = true, threadMode = ThreadMode.MAIN)
public void onEvent(Example event){
mainContentList = event.mainContentList;
if (mViewPager != null) {
setupViewPager(mViewPager, mainContentList);
}
TabLayout tabLayout = (TabLayout) findViewById(R.id.tabs);
tabLayout.setupWithViewPager(mViewPager);
}
的问题是出现在我们称之为从ActivityC
MainActivity
,
现在@Subscribe onEvent(Example data)
不会被调用,因为我们是从SplashActivity
张贴到它而已,所以它将不会被调用,并且ViewPager
不会更新。
我想要什么:
我想从StickyPost数据尽早这样我就可以在活动的OnCreate
方法初始化ViewPager
。
我知道我可以使用应用程序级Singleton或创建一个DataHolder
类等来存储数据,但有无论如何要实现这一点使用EventBus
?
感谢您的时间,如果您需要更多的信息让我知道,我会更新。
哪'EventBus'和'Subscribe'标注有那些?那些不是番石榴的,至少不是19.0 – fge
对不起,[Greenbots EventBus](https://github.com/greenrobot/EventBus)我会添加链接到问题 – Max
你在哪里注册公共汽车并从公共汽车注销('onResume'和'onPause'?) – nshmura