Android 匕首2+;事件总线
我想使用otto事件总线将数据从活动发送到我的片段 从我的活动中:Android 匕首2+;事件总线,android,dagger-2,otto,Android,Dagger 2,Otto,我想使用otto事件总线将数据从活动发送到我的片段 从我的活动中: @Produce public EventAvailableEvent produceEvent() { return new EventAvailableEvent(mEvent); } 要分割: @Subscribe public void onProvideEvent(EventAvailableEvent event) { mEvent = event.getEvent(); } 我在用匕首2注射巴士
@Produce
public EventAvailableEvent produceEvent() {
return new EventAvailableEvent(mEvent);
}
要分割:
@Subscribe
public void onProvideEvent(EventAvailableEvent event) {
mEvent = event.getEvent();
}
我在用匕首2注射巴士
@Inject Bus mBus;
private void injectDepedencies() {
App.from(getActivity()).getComponent().plus(new MyModule(mEvent));
}
我的模块取决于事件总线返回的事件
现在,我要做的是首先注入主组件、寄存器总线,然后注入子组件
AppComponent appComponent = App.from(getActivity()).getComponent();
appComponent.inject(this)
mBus.register(this)
SubComponent subComponent = appComponent.plus(new MyModule(mEvent));
subComponent.inject(this)
我正在寻找更好的方法,谢谢,因为我猜您的子组件是AppComponent的子组件,它继承了它提供的所有项 该关系允许子组件实现在声明时从其父级继承整个绑定图 这意味着,您可以只踢出前两行,只需创建子组件
App.from(getActivity()).getComponent().plus(new MyModule(mEvent)).inject(this);
mBus.register(this);
那就足够了