gwt UiBinder conjunto único ID
Pregunta
i tratar de programar una ID única para UiBinder widget.but fallan .my aspecto constructor, como a continuación
public CustomUIWidget() {
initWidget(uiBinder.createAndBindUi(this));
this.getWidget().getElement().setId(DOM.createUniqueId());
System.out.println(this.getWidget().getElement().getId()); //put debug line here, value is empty
}
Solución
Esto es trabajo para mí (usando GWT 2.1):
ui.xml:
<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder" xmlns:g="urn:import:com.google.gwt.user.client.ui">
<g:HTMLPanel>
<g:Label text="test" />
</g:HTMLPanel>
</ui:UiBinder>
el widget:
public TestView() {
initWidget(uiBinder.createAndBindUi(this));
getWidget().getElement().setId(DOM.createUniqueId());
System.out.println(getWidget().getElement().getId());
}
Esto crea una salida como gwt-uid-#
donde # es un número arbitrario.
El resto de su código está trabajando? A menudo había sucedido demasiado mi que tenía un error tipográfico o similar en el archivo ui.xml
que no produjo ningún error visible (es decir, sin StackTrace), pero todavía era errónea.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow