java如何使用UiBinder声明性地设置GWT Flextable第一行(即标题)?
我希望我的表具有以下静态列标题:“名称”、“姓氏”、“DOB”, 但我想在*中申报。用户界面。xml(而不是代码)
现在,我通过这样的代码来实现:
public PersonViewImpl extends Composite implements PersonView {
/*Lots of code removed for clarity*/
@UiField (provided = true) FlexTable personTable;
public PersonViewImpl(){
personTable.setText(0, 0, "Name");
personTable.setText(0, 1, "Surname");
personTable.setText(0, 2, "DOB")
}
}
我的个人观点是这样的。用户界面。xml
<g:FlexTable ui:field="personTable" />
我在谷歌上搜索了几个小时,但还是没找到
# 1 楼答案
构造函数的第一行缺少
initWidget( uiBinder.createAndBindUi(this) );
试试这个:
# 2 楼答案
当您声明
provider = true
时,ui绑定器不会实例化该对象,您需要在java类中实例化它 正确的代码是:# 3 楼答案
您不能在UI活页夹中设置FlexTable的单元格元素,可能您应该有自己的自定义小部件来呈现tr和td。例如,就像这里解释的:GWT table row as UiBinder