我有一个ClientBundle:
public interface Resources extends ClientBundle {
@Source("styles/styles.css")
Layout styles();
@Source("styles/styles2.css")
Styles styles2();
}
在我的UiBinder xml中,我使用这个类:
<ui:with field='resources' type='com.nordea.omega.gwt.client.ui.AppResources' />
...
<div class="{resources.styles.label}">Text</div>
标准是使用styles.css,但是在运行时更改是否可以改为使用styles2.css?
答案 0 :(得分:1)
如果您使用GWT样式的注释,AFAIK将无法动态更改,因为注释/类是静态解析的,即GWT编译时(上次我使用GWT时大约一年左右)。
最好的方法是导航DOM并将链接的style.css更改为另一个样式表。 检查showcase src以获取如何执行此操作的示例:
答案 1 :(得分:1)
如果你使用CSS资源,以编程方式访问它们非常容易:查看http://code.google.com/webtoolkit/doc/latest/DevGuideUiBinder.html#Programmatic_access
关键代码是:
@UiField AppResources resources;