私がGWTで持っている一般的な設計の1つは、AとBの2つの子を含むウィジェットを作成することです。
メインウィジェットに関連付けられたuibinderファイルで、これら2つのウィジェットAとBを宣言します。
私がやりたいのは、ifステートメントに応じてウィジェットAをロードするかどうかです。
理想的なアプローチは、ウィジェットAにprovided = trueを設定し、このウィジェットをロードしたくない場合はウィジェットAをnullに設定することです。しかし、GWTはエラーをスローします。
uibinderでウィジェットを宣言してからロードしない方法はありますか?
ありがとう
編集:多くの議論の後、理想的なアプローチは、オプション=trueのときにフィールド「provided=true」と「optional= true」を宣言することです。フィールドがnullの場合、createAndBindUIは例外をスローしてはなりません。これはクリーンなアプローチです。
この機能がGWTに存在する必要があると思われる場合は、この問題にスターを付けてください: http ://code.google.com/p/google-web-toolkit/issues/detail?id=5699
編集2:トーマスによって説明されているようにLazyPanelを使用することは、これを処理するためのより良い方法のようです。