Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用uibinder创建具有子级的gwt复合组件?_Java_Gwt_Uibinder - Fatal编程技术网

Java 如何使用uibinder创建具有子级的gwt复合组件?

Java 如何使用uibinder创建具有子级的gwt复合组件?,java,gwt,uibinder,Java,Gwt,Uibinder,我想创建一个组件来装饰其子级,例如: mycomponent.ui.xml: <g:FlowPanel addStyleNames="myStyle"> <!-- how can i render children ? --> </g:FlowPanel> 然后其他人可以使用: <myapp:mycomponent> <g:Label>Decorated child</g:Label> </mya

我想创建一个组件来装饰其子级,例如:

mycomponent.ui.xml:

<g:FlowPanel addStyleNames="myStyle">
    <!-- how can i render children ? -->
</g:FlowPanel>

然后其他人可以使用:

<myapp:mycomponent>
    <g:Label>Decorated child</g:Label>
</myapp:mycomponent>

受奖儿童
如何在uibinder中呈现孩子?(如果必须的话,也可以使用Java)

使用以下XML:

<myapp:mycomponent>
    <g:Label>Decorated child</g:Label> 
</myapp:mycomponent>

受奖儿童

将实例化
MyComponent
,然后调用
MyComponent.add(label)
。您所要做的就是重写
。在类中添加(…)
并应用您希望传递给组件的任何样式。

MyComponent
实现用于添加/删除子组件的
haswidget
接口

MyComponent.ui.xml
看起来像

<g:FlowPanel ui:field="main" />
召唤

<M:MyComponent>
    <g:Label text="some text" />
</M:MyComponent>


将以这种方式工作。

非常感谢您提供了非常完整的答案。我一直在寻找一种简单的方法来实现这一点。谢谢没有注入MyComponentUiBinder而不是GWT.create-ing会对性能造成影响吗?AFAIK注入使用的是GWT.create,所以我说不会
<M:MyComponent>
    <g:Label text="some text" />
</M:MyComponent>