FlexTableウィジェットを使用する場合は、ui.xmlテンプレートのみを使用して、その場所、書式設定、および属性を設定できます。 Javaコードでは、テーブルの内容(およびヘッダー)を実際に提供する必要があります。
1:はあなたがinitWidget(...)
を呼び出すときのために、新しい空のFlexTableをインスタンス化するテンプレートに任せ
は、これには2つのアプローチがあります。あなたのコンテンツを指定する直後に、table.setText(0,0, "Header 1")
などへの適切なコールをフォローアップすることができます。
2:あなたがinitWidget(...)
を呼び出しても、真=提供を使用して、テーブルのメンバ変数に注釈を付ける前FlexTable自分をインスタンス化します。同じ電話をsetText()
にフォローアップしてください。
例
public final class SomeWidget extends Composite {
@UiField (provided=true) FlexTable table;
SomeWidget() {
// When using provide=true, the table must be instantiated
// BEFORE calling initWidget.
setupTable();
initWidget(binder.createAndBindUi(this));
}
private void setupTable() {
table = new FlexTable();
table.setText(0, 0, "Header 1");
table.setText(0, 1, "Header 2");
// Create a temp blank row:
table.insertRow(1);
}
private static final Binder binder = GWT.create(Binder.class);
interface Binder extends UiBinder<Widget, SomeWidget> {}
}
そして、あなたのui.xmlファイル内(アプローチ2使用):
<ui:UiBinder
xmlns:gwt="urn:import:com.google.gwt.user.client.ui"
xmlns:ui="urn:ui:com.google.gwt.uibinder">
<ui:style>
.table-style {
border: 1px solid black;
}
</ui:style>
<gwt:HTMLPanel>
Other random html
<gwt:FlexTable ui:field="table" styleName="{style.table-style}" borderWidth="2" />
</gwt:HTMLPanel>
</ui:UiBinder>
私は 'UIで定義する静的なレイアウトを持ってする方法はありますが.xml'ファイル?または、チェックボックスやテキストなどの単純なテーブルを持つ他の方法ですか? – displayname