Gwt UiBinder如何:在ui.xml中创建可恢复组件
我有一个带有Gwt UiBinder如何:在ui.xml中创建可恢复组件,gwt,Gwt,我有一个带有@UiConstrutor注释的组件: @UiConstructor public SearchWidget(Widget filterWidget, Widget resultWidget) { ... } 在ui.xml中,我必须编写如下内容: <SearchWidget filterWidget="" resultWidget=""/> <with field="filterWidget"> <Widget> ... &l
@UiConstrutor
注释的组件:
@UiConstructor
public SearchWidget(Widget filterWidget, Widget resultWidget) {
...
}
在ui.xml中,我必须编写如下内容:
<SearchWidget filterWidget="" resultWidget=""/>
<with field="filterWidget">
<Widget>
...
</Widget>
</with>
<With field="resultWidget">
<Widget>
...
</Widget>
</with>
问题是,我希望能够在ui.xml中构建一个复杂的小部件,并在
标记中使用,比如:
<SearchWidget filterWidget="" resultWidget=""/>
<with field="filterWidget">
<Widget>
...
</Widget>
</with>
<With field="resultWidget">
<Widget>
...
</Widget>
</with>
...
...
然后像这样使用它:
<SearchWidget filterWidget="{filterWidget}" resultWidget="{resultWidget}"/>
它们是现有的接近语法吗?您可以尝试使用
@UiChild
注释(如果您可以用相应的方法替换构造函数依赖项)。请举例说明
两种新方法:
@UiChild SearchWidget#addFilterWidget(Widget w)
@UiChild SearchWidget#addResultWidget(Widget w)
UiBinder(您需要为自定义小部件声明新的p
命名空间):
...
...
为什么要将小部件包装两次?为什么不能呢?@Zerkz,
在这种情况下不是小部件。它是对SearchWidget#addFilterWidget(Widget w)
方法的调用。正如您所见,您需要传递一个参数,在本例中,它是…
。检查我的答案中提到的javadoc,您会发现更详细的示例。