1

私はGWTが初めてです。私が見たコード例では、プレゼンターは asWidget メソッドを含むインターフェース Display を定義しています。例えば、

public interface Display {
   HasClickHandlers getSaveButton();
   HasValue<String> getName();
   ...
   Widget asWidget();
}

次に、プレゼンターは go() メソッドを実装します。

public void go(final HasWidgets container){
   ...
   container.add(display.asWidget());
}

ディスプレイをウィジェットにキャストするだけの何が問題なのですか。

container.add((Widget) display);

ありがとうございました!

4

1 に答える 1

3

asWidget()テストを容易にするためにGWTにあります。

これを使用すると、抽象クラス Widget を拡張することなく、テストでディスプレイやその他のビュー コンポーネントのスタブ実装を使用できます。

したがって、あなたの場合、ディスプレイは必ずしもウィジェットではなく、任意のクラスにすることができます。唯一の条件は、ウィジェットを返すことです。

ここで、より完全な説明を読むことができます。

于 2013-10-23T18:09:34.043 に答える