4

GWT2.2 プロジェクトで CssResource と ImageResource を一緒に使用しようとしています。

CssResource と難読化は正常に機能していますが、画像へのアクセスに問題があります。

次の方法で、ui.xml ファイルから直接 ImageResource を介して画像にアクセスできます。

<ui:with type="com.example.client.resource.ResourceBundle" field="myResource"/>
<g:Image resource="{myResource.image}"/>

しかし、@sprite を使用して、外部の .css ファイル内から ImageResource を添付することはできません。

次のインターフェースがあります。

public interface ResourceBundle extends ClientBundle {
ResourceBundle INSTANCE = GWT.create (ResourceBundle.class);

    @Source("com/example/client/resource/images/image.png")
    ImageResource image();

    @Source("com/example/client/resource/css/mystyle.css")
    MyCssResource myCssResource();
    }

public interface MyCssResource extends CssResource {
    String className();
}

cssファイルにスプライトを追加すると、

@sprite .className {
    gwt-image: 'image';
}

次のエラー メッセージが表示されました。

[ERROR] - Unable to find ImageResource method value("image") in
com.example.client.views.MyView_BinderImpl_GenBundle : Could not find 
no-arg method named image in type com.example.views.MyView_BinderImpl_GenBundle
4

1 に答える 1

2

次のように、UiBinderテンプレートからスタイルにアクセスできます。

<ui:with type="com.example.client.resource.ResourceBundle" field="myResource"/>

<g:FlowPanel styleName="{myResource.myCssResource.className}"/>
于 2011-04-05T16:18:35.500 に答える