在GWTP之前,我使用了这样的方法:
Button button = new Button();
button.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
// doSomething()
}
});
但gwtp框架让我使用了这个方法:
@UiField
Button button;
@UiHandler("button")
void onButtonClick(ClickEvent e){
getUiHandlers().buttonClickAction();
}
我想知道有没有 TYPESAFE 解决方案吗?
如何提供@UiHandler()
类型安全值f.e。:
@UiHandler(button);
答案 0 :(得分:0)
首先,@UiHandler
是GWT UiBinder功能。它与GWTP无关。如果您想确保没有人更改xml文件中ui:field
的类型,您可以先将其@UiField
映射。
@UiField
Button button;
@UiHandler("button")
void onButtonClick(ClickEvent e){
getUiHandlers().buttonClickAction();
}
这样,如果有人将ui:field放入ui.xml文件中的按钮 - 它将在编译时失败。希望它有所帮助