【发布时间】:2011-03-29 00:42:22
【问题描述】:
我正在开发一个需要为移动设备用户提供不同布局的 GWT 应用程序。我可以轻松确定用户是否在使用移动浏览器;但是,我不确定处理它们的最佳模式。
我目前正在使用 MVP 模式 - 最好将特定于浏览器的视图简单地传递给 Presenter,还是有更合适的方法?
【问题讨论】:
标签: gwt
我正在开发一个需要为移动设备用户提供不同布局的 GWT 应用程序。我可以轻松确定用户是否在使用移动浏览器;但是,我不确定处理它们的最佳模式。
我目前正在使用 MVP 模式 - 最好将特定于浏览器的视图简单地传递给 Presenter,还是有更合适的方法?
【问题讨论】:
标签: gwt
您可以设置 GWT 以检测所使用的 Web 浏览器,如 this question 中所述。然后,通过Deferred Binding,让编译器为mobilesafari 用户代理“滑动”正确的视图。这样一来,您就不必在 Java 代码中乱扔浏览器检测等。
【讨论】:
我这样做的方式是拥有不同的 GWT 模块(具有自己的入口点、Gin 模块,甚至不同的 CssResources),然后在 myapp.html 页面上,您只需检查哪个浏览器正在请求内容和基于它(javascript 检查)适当的模块
<script src="myapp/myapp.nocache.js"/>
或
<script src="mymobileapp/mymobileapp.nocache.js"/>
已加载。
如果您正在使用 GIN 和 MVP 框架(gwt-platform 是我选择的平台),那么您可以重用已经为演示者编写的代码,并且只实现不同的视图。
【讨论】: