1

CSSでクライアントバンドルを使用してロードされた画像を使用しようとしているので、次のようにCssResourceを使用してコーディングしましたが、うまくいきませんでした

ClientBundle インターフェイス

public interface MyResources extends ClientBundle {
      @Source("tab_off_LT.png")
      DataResource image();

      @Source("my.css")
      MyCssResources css();
    }

CssResource インターフェイス

public interface MyCssResources extends CssResource{

    String myImage();
}

CSSファイル

@url test1 image;
.myImage {
  background: 'test1';
  width: 50px;
}

実装コード

RootLayoutPanel rp = RootLayoutPanel.get();
MyResources myr = (MyResources) GWT.create(MyResources.class);
myr.css().ensureInjected();
Label l = new Label("Test BackgroundImage");
l.setStyleName(myr.css().myImage());
rp.add(l);

コードのどこかが間違っている場合は修正してください。どこが間違っているのか知りたいですか?

4

1 に答える 1

2

@url変数を定義します(あなたの場合は という名前test1です)。コード内の の値はbackground文字列リテラルであり、変数への参照ではありません: 引用符を削除してください。

@url test1 image;
.myImage {
   background: test1;
   width: 50px;
}

https://developers.google.com/web-toolkit/doc/latest/DevGuideClientBundle#References_to_Data_Resourcesを参照してください

于 2012-11-17T10:26:55.507 に答える