我有一个扩展 ClientBundle 并定义 CssResource 的类。我想在模板 Uibinder 中使用它作为面板的 css 属性(这将是背景。但在运行期间未显示图像。按照代码:
图片.css:
.backgroundPage {
background-image: url("../resources/Universe-Big-Planet.jpg");
background-repeat:no-repeat;
/* background-color: red; */
}
BundleResouces.java:
public interface BundleResources extends ClientBundle {
public final BundleResources IMPL= (BundleResources) GWT.create(BundleResources.class);
@Source("../resources/Universe-Big-Planet.jpg")
ImageResource universeBigPlanet();
@Source("../resources/Wood_blue.jpg")
ImageResource woodBlue();
@Source("Images.css")
MyStyle mystyle();
public interface MyStyle extends CssResource{
String backgroundPage();
}
}
Home.ui.xml(模板):
<ui:with field='res' type='it.myproject.movieuniverse.client.bundle.BundleResources'/>
.............................
</ui:style>
<g:DockLayoutPanel ui:field="background" unit="PX" styleName="{res.mystyle.backgroundPage}">
主页.java:
public Home() {
initWidget(uiBinder.createAndBindUi(this));
Window.addResizeHandler(resizeHandler);
resizeWidget();
BundleResources.IMPL.mystyle().ensureInjected();
}
如果我尝试使用 background-color: red 它可以工作,因此 css 被正确指向。不知道怎么解决,谢谢!