私のui.xmlには、次のようなスタイルがあります
<ui:style src="../teststyle.css" />
ui.xmlではなくjavaファイル内のスタイルをプログラムで使用したい場合、ウィジェットでcssが難読化されているために.setStyleName(..)を呼び出す方法
ビュークラスでスタイルを使用するには、次の手順を実行する必要があります。
CssResource
ビュークラスで拡張するインターフェースを定義するinterface Style extends CssResource {
String myStyle();
}
@UiField
Style style;
type
属性を追加します<ui:style>
(タイプはステップ1のインターフェースと一致する必要があります)。<ui:style type="com.example.MyView.Style">
Style
ビュークラスでアクセスするcssクラスごとに、インターフェイスにメソッドを追加する必要があります(で行われるようにmyStyle()
)
style
これで、フィールド(style.myStyle()
)を介してスタイルにアクセスできます。
お役に立てば幸いです。
私があなたの質問を正しく理解しているなら、あなたはCssResourceから拡張するクラスを定義しなければなりません(あなたはおそらくそれをすでに行っています)。あなたの見解では、このクラスの静的インスタンスを持つことができます(それを呼びましょうcssInstance
)。コンストラクターでは、を呼び出す必要がありますcssInstance.ensureInjected()
。スタイルを追加または設定する場合は、例のように簡単に行うことができます。anyWidget.addStyleName(cssInstance.styleBorder());