gwt uiBinder用户界面:字段访问问题

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

我的ui.xml文件中有:

<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");
}