0

@UiConstrutor私は注釈付きのこのコンポーネントを持っています:

@UiConstructor
public SearchWidget(Widget filterWidget, Widget resultWidget) {
  ...
}

ui.xml には、次のように記述する必要があります。

<SearchWidget filterWidget="" resultWidget=""/>

問題は、複雑なウィジェットを ui.xml で別々に構築し、次の<SearchWidget>ようなタグで使用できるようにしたいということです:

<with field="filterWidget">
  <Widget>
  ...
  </Widget>
</with>

<With field="resultWidget">
  <Widget>
  ...
  </Widget>
</with>

そして、次のように使用します:

<SearchWidget filterWidget="{filterWidget}" resultWidget="{resultWidget}"/>

それらは既存のアプローチ構文ですか?

4

1 に答える 1

3

@UiChildアノテーションの使用を試すことができます (コンストラクターの依存関係を対応するメソッドで置き換えることができる場合)。対応する javadocと例を参照してください。

2 つの新しい方法:

@UiChild SearchWidget#addFilterWidget(Widget w)
@UiChild SearchWidget#addResultWidget(Widget w)

pUiBinder (カスタム ウィジェットの新しい名前空間を宣言する必要があります):

<p:SearchWidget>
    <p:filterWidget><p:Widget>...</p:Widget></p:filterWidget>
    <p:resultWidget><p:Widget>...</p:Widget></p:resultWidget>
</p:SearchWidget>
于 2013-08-05T14:54:53.043 に答える