Gwt UiBinder文件中的自定义标记

Gwt UiBinder文件中的自定义标记,gwt,uibinder,Gwt,Uibinder,在UiBinder.ui.xml文件中使用时,可以指定标记。其他一些谷歌构建的小部件也有类似的特殊标记-甚至还有一个子标记, 如何为我自己的小部件指定这些元素?您正在寻找的是UiBinder的自定义元素解析器。看见不幸的是,它还不受支持 您可能对如何自己扩展当前解析器感兴趣。经过一些GWT改进后,这个问题的新答案位于。复制以下内容以避免版主删除(可能?) 您可以使用@UiChild在UiBinders中访问的小部件中声明特殊函数 比如说, class MyPanel extends Absolu

在UiBinder.ui.xml文件中使用
时,可以指定
标记。其他一些谷歌构建的小部件也有类似的特殊标记-
甚至还有一个子标记,


如何为我自己的小部件指定这些元素?

您正在寻找的是UiBinder的自定义元素解析器。看见不幸的是,它还不受支持


您可能对如何自己扩展当前解析器感兴趣。

经过一些GWT改进后,这个问题的新答案位于。复制以下内容以避免版主删除(可能?)

您可以使用@UiChild在UiBinders中访问的小部件中声明特殊函数

比如说,

class MyPanel extends AbsolutePanel {

    @UiChild
    public void addAt(Widget w, String parameter1, String parameter2) {
         ....
然后,在你的uiBinder中,你可以说

<custom:MyPanel>
    <custom:at parameter1="HI" parameter2="Anything you like!">
        <g:AnySingleWidget />
    </custom:at>
</custom:MyPanel>


两年后,这个问题仍然很有趣:你知道有什么改进吗?是的,有明确的改进:查找@UiChild事实上,请查看