Java gwt uibinder集唯一ID
我试图为uibinder小部件设置唯一id,但失败了Java gwt uibinder集唯一ID,java,gwt,uibinder,Java,Gwt,Uibinder,我试图为uibinder小部件设置唯一id,但失败了 public CustomUIWidget() { initWidget(uiBinder.createAndBindUi(this)); this.getWidget().getElement().setId(DOM.createUniqueId()); System.out.println(this.getWidget().getElement().getId()); //put debug
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
}
这对我有用(使用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>
这将创建一个类似于gwtuid-
的输出,其中#是一个任意数
代码的其余部分是否正常工作?我的
ui.xml
文件中经常出现打字错误或类似错误,虽然没有产生任何可见错误(即没有stacktrace),但仍然是错误的 这对我有用。你能提供更多的代码吗?你在使用gwt2.1吗?尝试在system.out上放置调试行。我试过了,它是空的。但是DOM.createUniqueId()确实创建了uniqueID
public TestView() {
initWidget(uiBinder.createAndBindUi(this));
getWidget().getElement().setId(DOM.createUniqueId());
System.out.println(getWidget().getElement().getId());
}