gwt uiBinder用户界面:字段访问问题
我的ui.xml文件中有:gwt uiBinder用户界面:字段访问问题,gwt,field,uibinder,Gwt,Field,Uibinder,我的ui.xml文件中有: <g:Button ui:field="saveButton"/> 如果我按原样运行,我会得到一个空白屏幕。但是如果我删除saveButton.setText(“Save”)按钮将出现,但没有任何文本顺便说一句,我正在使用mvp4g 知道为什么会发生这种情况吗?@UiField(未提供)必须位于initWidget调用之下,@UiField(提供=true)必须位于initWidget调用之上 @Inject public MyVie
<g:Button ui:field="saveButton"/>
如果我按原样运行,我会得到一个空白屏幕。但是如果我删除saveButton.setText(“Save”)代码>按钮将出现,但没有任何文本<代码>顺便说一句,我正在使用mvp4g
知道为什么会发生这种情况吗?@UiField(未提供)必须位于initWidget调用之下,@UiField(提供=true)必须位于initWidget调用之上
@Inject
public MyView() {
// here go all UiFields with provided=true
initWidget(binder.createAndBindUi(this));
// here go all UiFields without provided
saveButton.setText("Save");
}
实际上,重要的是createAndBindUi
,而不是initWidget
;使用provided=true,重要的是在createAndBindUi
之前初始化字段,当然可以随时使用字段的值。但是,未提供的字段由createAndBindUi
调用初始化,因此在此之前不能使用该字段的值。
@Inject
public MyView() {
// here go all UiFields with provided=true
initWidget(binder.createAndBindUi(this));
// here go all UiFields without provided
saveButton.setText("Save");
}