我正在尝试在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
答案 0 :(得分:2)
您可以按照以下方式从UiBinder模板访问您的样式:
<ui:with type="com.example.client.resource.ResourceBundle" field="myResource"/>
<g:FlowPanel styleName="{myResource.myCssResource.className}"/>