我正在尝试使用 GWT/GIN 迈出第一步。
我已经从 google 下载了 hellomvp 示例,并按照本教程开始使用 gin。
我的问题是关于 HelloGinModule 类的配置方法中的这一行:
bind(ActivityMapper.class).to(AppActivityMapper.class).in(Singleton.class);
在我看来,它应该将我的类“AppActivityMapper”绑定为活动的 ActityManager。但实际上类构造函数(或类的任何方法)从未被调用,因此触发的事件不会被捕获。
AppActivityMapper 类如下所示:
public class AppActivityMapper implements ActivityMapper {
Provider<HelloActivity> helloActivityProvider;
Provider<GoodbyeActivity> goodbyeActivityProvider;
@Inject
public AppActivityMapper(final Provider<HelloActivity> helloActivityProvider, final Provider<GoodbyeActivity> goodbyeActivityProvider) {
this.helloActivityProvider = helloActivityProvider;
this.goodbyeActivityProvider = goodbyeActivityProvider;
}
@Override
public Activity getActivity(Place place) {
if (place instanceof HelloPlace) {
return helloActivityProvider.get();
} else if (place instanceof GoodbyePlace) {
return goodbyeActivityProvider.get();
}
return null;
}
}
在我的示例中,我的 View-Class 中的这段代码在单击链接后被调用:
presenter.goTo(new GoodbyePlace(name));
事件被触发到事件总线。但什么也没有发生。
提前致谢