问题
I have a GWTP MyPresenter that registers a handler at onBind(), and it works perfectly. The problem is when I leave the presenter using the BACK arrow on the browser. The onUnbind() is never called (I tried with an breakpoint overriding the method, but is never executed). So that this handler is never unregistered. What is wrong? Thanks.
public class MyPresenter extends
PresenterWidget<ViewDiagramPresenter.MyView> {
[...]
@Override
protected void onBind() {
super.onBind();
registerHandler(getEventBus().addHandler(myEvent.getType(), myHandler));
}
}
回答1:
As I recall onUnBind()
is not called when the Presenter
is hidden, that would trigger the onHide()
method. Specifically, I think the onUnBind()
should be called manually - you could eg. chain it if you override onHide()
.
Hope that helps.
Cheers,
来源:https://stackoverflow.com/questions/13396992/gwtp-onunbind-never-called-after-closing-a-presenter