GWT – 如何在uibinder xml文件中定义布局层次结构外的窗口小部件

这是我的第一篇文章.我希望有人可以帮助我.
我正在寻找一种方法来分别在UiBinder XML布局文件中定义一个小部件,而不是布局层次结构的一部分.
这是一个小例子:

<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
xmlns:g="urn:import:com.google.gwt.user.client.ui">

<g:Label ui:field="testlabel" text="Hallo" />
<g:HTMLPanel>       
...
</g:HTMLPanel>

编译失败,因为ui:UiBinder元素只需要一个子元素.
在Java Code中,我将照常访问和绑定Label小部件:

@UiField Label testlabel;

例如,当您定义Grid或FlexTable时,这可能很有用 – 我想在XML布局文件中定义表头的标签,而不是在代码中以编程方式定义.

提前谢谢了

解决方法

对不起,没法,UiBinder不支持这种语法.想一想 – 这个Widget会去哪里?它应该添加到DOM树吗?它还使编译器很难判断此代码​​是否应该被修剪为未使用.

您将不得不等待GWT团队为Grid创建自定义标签(就像他们使用的那样,例如,DockLayoutPanel).我不希望FlexTable有这样的功能,因为它意味着动态内容的设计,这意味着无论如何都要以编程方式添加它.

相关文章

php输出xml格式字符串
J2ME Mobile 3D入门教程系列文章之一
XML轻松学习手册
XML入门的常见问题(一)
XML入门的常见问题(三)
XML轻松学习手册(2)XML概念