如何在 android 中使用 gwt Web 应用程序。有人可以帮我吗?如何编写监听器?提前致谢
3 回答
如果您想使用 gwt 开发移动应用程序/网站,请阅读文章GWT 支持移动应用程序开发,该文章将 mgwt 描述为使用单个代码库使用 GWT 开发移动应用程序和移动网站的库。
创建 GWT 项目
将此行添加到
.gwt.xml
<inherits name='com.googlecode.mgwt.MGWT'/>
下载mgwt 库并将其添加到您的项目中。
随心所欲地修改你
EntryPoint
的。
public class MobileEntryPoint implements EntryPoint {
int countI;
MTextBox lbl;
public void onModuleLoad() {
lbl = new MTextBox();
countI = 0;
MGWT.applySettings(MGWTSettings.getAppSetting());
AnimationHelper animationHelper = new AnimationHelper();
RootPanel.get().add(animationHelper);
LayoutPanel layoutPanel = new LayoutPanel();
Button button = new Button("Hello mgwt!");
button.addTapHandler(new TapHandler() {
@Override
public void onTap(TapEvent event) {
countI++;
lbl.setText("You clicked: " + countI + " times");
}
});
layoutPanel.add(button);
layoutPanel.add(lbl);
animationHelper.goTo(layoutPanel, Animation.SLIDE);
}
}
浏览Daniel Kurka 的HelloWorld Example和Running Showcase。
重量级?? --->使GWT与移动设备一起使用
要使用 mgwt,您需要下载最新版本并将其放在您的类路径中。之后,您必须将其包含在您的 gwt.xml 文件中。您还可以将 gwt 的用户代理属性设置为 safari,因为几乎所有移动设备都在 webkit 上运行并mgwt
依赖webkit
.
用法:
<inherits name="com.googlecode.mgwt.MGWT"/>
<set-property name="user.agent" value="safari" />
android 中的 gwt 应用程序应该几乎可以工作,因为它的浏览器是基于 webkit 的,gwt 支持,所以只需尝试从您的 android 浏览器打开您的应用程序。
不同的是,某些小部件可能会因为屏幕大小或被认为用于鼠标事件(这是拖放的情况)而表现得很奇怪,因此可能对于某些面板,您必须考虑对支持的触摸事件进行编程在 gwt 事件机制中。
如果您希望您的应用程序在移动设备中看起来与在 Web 中不同,那么有一些特定于移动设备的 3party 库,例如mgwt,它使您的应用程序看起来像原生移动应用程序。Mgwt 甚至添加了更多排列,以便您可以为不同的目标设备提供不同的 Web 视图。您可能感兴趣的其他库可能是gwtmobile-ui或sencha mobile。
最后,如果你希望你的 webapp 被嵌入到一个 android 包中,你需要 Apache cordova(又名 phonegap)。有一个 gwt 库可以访问cordova 的某些功能(硬件调用,如打开相机、文件系统等),它被称为gwt-phonegap