与网页设计机构一起创建GWT Web应用程序的最佳方式是什么?
我猜网络设计机构会给ma一个静态的html文件+ css文件。我应该如何将其与GWT集成?我应该使用Button的.wrap()方法,......?或者有更好的方法吗?
由于
答案 0 :(得分:2)
我认为第一部分是确定页面的哪些部分是静态的,以及页面的哪些部分需要GWT。
您将他们的图像放在一个或多个ClientBundle中(它允许您在单个HTTP请求中获取所有图像)。
您将把CSS放在CSSResouce。
中顺便说一下,您还可以向他们提供GWT widget gallery的链接,以便让他们了解您可以轻松完成的工作。
然后,如果他们给你一些静态文件,更容易的方法就是使用uiBinder标签和<HTMLPanel>
标签,它允许你将纯HTML放在你的GWT应用程序中。< / p>
例如,如果您的代理商为您提供带有文字和按钮的HTML代码:
<div><input type="button"/></div>
你可以像这样在uiBinder中集成它:
MyComponent.ui.xml :
<ui:UiBinder xmlns:ui='urn:ui:com.google.gwt.uibinder'>
<g:HTMLPanel>
<!-- replace <input type="button"> with the corresponding GWT component -->
<div><g:Button ui:field="myButton"/></div>
</g:HTMLPanel>
</ui:UiBinder>
MyComponent.java :
public class MyComponent extends Composite{
public interface MyUiBinder extends UiBinder<HTMLPanel, MyComponent>{}
//This allows you to get the button and work with it
@UiField
Button myButton;
public MyComponent(){
//use the .ui.xml file to get the HTMLPanel
MyUiBinder uiBinder=GWT.create(MyUiBinder.class);
HTMLPanel panel = uiBinder.createAndBindUi(this);
this.initWidget(panel);
}
//GWT sees the @UiHandler anotation and automatically adds a handler on "myButton".
@UiHandler("myButton")
public void onClickEvent(ClickEvent event){
}
}
希望有所帮助。