我有以下 UiConstructor,它采用一个数组参数,一个 ImageResource 数组
@UiField ToggleButton leftToggleButton;
public @UiConstructor ToggleButtonGroup(ImageResource[] faceImages) {
initWidget(uiBinder.createAndBindUi(this));
leftToggleButton.getUpFace().setImage(new Image(faceImages[0]));
leftToggleButton.getDownFace().setImage(new Image(faceImages[1]));
}
我不知道调用此类构造函数的 ui.xml 表示法,因为它是一个数组
如果我将类型减少到 only ImageResource
,我可以在我的 ui.xml 文件中成功使用以下内容
<ui:image field="SelectInverseImage" src="bundle/SelectInv.png" />
...
<mywidget:ToggleButtonGroup faceImages="{SelectInverseImage}"/>
但是,当我尝试
<ui:image field="SelectImage" src="bundle/Select.png" />
<ui:image field="SelectInverseImage" src="bundle/SelectInv.png" />
<mywidget:ToggleButtonGroup faceImages="{SelectInverseImage}{SelectImage}"/>
当我使用数组类型时ImageResource[]
,我最终得到以下错误
[ERROR] [roza] Cannot parse value: "{SelectInverseImage}{SelectImage}" as type ImageResource[]
有小费吗?
PS:我对设置按钮的upFace和downFace部分不感兴趣,这里只是为了演示..主要是定义ui.xml符号来设置构造函数的数组类型属性