动态添加多个GWT RadioButton组

动态添加多个GWT RadioButton组,gwt,radio-button,uibinder,Gwt,Radio Button,Uibinder,在我的应用程序中,我有一个小部件面板(都是相同类型的小部件),以及允许用户向面板添加和删除小部件的按钮。每个小部件中都有一个GWT RadioButton组。小部件使用GWT UiBinder,因此在我的ui.xml文件中,我给每个RadioButton一个组名,以便它们链接在一起 然而,当2个或更多的小部件被添加到面板中时,这就成了一个问题,因为所有小部件中的所有单选按钮都具有相同的组名。我希望每个小部件中的每个RadioButton组独立于其他组。如何执行此操作?您可以将groupName参

在我的应用程序中,我有一个小部件面板(都是相同类型的小部件),以及允许用户向面板添加和删除小部件的按钮。每个小部件中都有一个GWT RadioButton组。小部件使用GWT UiBinder,因此在我的ui.xml文件中,我给每个RadioButton一个组名,以便它们链接在一起


然而,当2个或更多的小部件被添加到面板中时,这就成了一个问题,因为所有小部件中的所有单选按钮都具有相同的组名。我希望每个小部件中的每个RadioButton组独立于其他组。如何执行此操作?

您可以将groupName参数引入小部件构造函数,然后使用@UiFactory构建单选按钮:

private String groupName;

public MyWidget(String groupName) {
    this.groupName = groupName;
    initWidget(uiBinder.createAndBindUi(this));
}

@UiFactory
RadioButton makeRadioButton() {
    return new RadioButton(groupName);
}
将为您在UiBinder xml文件中使用的所有
自动调用
makeRadioButton()

现在,您可以使用不同的无线组名称动态创建每个小部件