2012-08-02 58 views

回答

8

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

例如,

class MyPanel extends AbsolutePanel { 

    @UiChild 
    public void addAt(Widget w, String parameter1, String parameter2) { 
     .... 

然后,在你UiBinder的,你可以在http://google-web-toolkit.googlecode.com/svn/javadoc/latest/com/google/gwt/uibinder/client/UiChild.html

+1

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

见@UiChild我希望GWT文档记录你表现出的参数特性这里。这正是我所期待的,但不可能通过官方文件来发现。 – jcairney 2013-09-16 12:59:51

+0

还值得指出的是,使用基本类型指定的“Widget w”后面的任何参数都将显示为UiBinder设计器中的子编辑器上可编辑的属性,它们归入UiChild标题下。 所以在上面的例子中,将在标题“UiChild”下的属性窗格中具有属性parameter1和parameter2。 – jcairney 2013-09-16 13:06:40

+0

如果您使用的是@UiChild(tagname =“something”)注释,那么标记名必须是小写字母,或者是与您的UiChild add方法相同的包中的实际类名,否则设计器将抛出错误。这些错误不会干扰开发模式或编译,但它们很烦人。 – jcairney 2013-09-16 13:13:04