GWT 2.1 MVP(活动/场所)和选项卡式显示

GWT 2.1 MVP(活动/场所)和选项卡式显示,gwt,mvp,gwt-mvp,Gwt,Mvp,Gwt Mvp,在一个现有的项目中,我们合理地使用了MVP(手工制作)。它被理解,并且主要做我们需要的事情。对于一个新项目,我正在考虑使用GWT2.1(活动和场所)中内置的MVP框架 我们的应用程序大多是选项卡式显示,每个选项卡都绑定到一个视图小部件 我曾尝试使用活动和场所进行此类展示,但没有成功。问题的一部分在于《Hello World》这篇文章的例子让我追根究底,太多的新概念让我的大脑无法消化 Hello World示例IMO不是一个充分的介绍,并且没有处理许多真实世界的用例。我希望有人能为我指出使用MVP

在一个现有的项目中,我们合理地使用了MVP(手工制作)。它被理解,并且主要做我们需要的事情。对于一个新项目,我正在考虑使用GWT2.1(活动和场所)中内置的MVP框架

我们的应用程序大多是选项卡式显示,每个选项卡都绑定到一个视图小部件

我曾尝试使用活动和场所进行此类展示,但没有成功。问题的一部分在于《Hello World》这篇文章的例子让我追根究底,太多的新概念让我的大脑无法消化

Hello World示例IMO不是一个充分的介绍,并且没有处理许多真实世界的用例。我希望有人能为我指出使用MVP进行标签显示的任何示例应用程序的方向。托马斯·布罗耶(Thomas Broyer)在他的博客上发表了一些优秀的帖子,但这些帖子仍然让我有点困惑


之前,我使用AppController处理选项卡更改,并为每个选项卡指定一个演示者。GWT2.1中的新体系结构让我更加困惑它应该是什么

我正在使用gwt Activities/Places框架进行选项卡式显示,效果非常好,但是:我决定放弃我们一直使用的
TabLayoutPanel
小部件,创建我自己的导航栏(看起来像选项卡)和内容窗格。效果是一样的——看起来一模一样——但实现要干净得多


我认为问题在于尝试将活动/地点(有自己的导航想法)与
选项卡面板(有另一种导航想法)混合在一起。起初,我试图将它们组合在一起,覆盖选项卡按钮行为以触发PlaceController,PlaceController反过来切换选项卡,但是。。。很乱。有了独立的导航栏/内容窗格,PlaceController可以随心所欲地做任何事情。您只需手动切换视图,而不是让TabPanel为您切换视图。

我也遇到了这个问题,但通过每个选项卡使用一个活动,每个活动使用一个演示者(或多个)来显示选项卡的组件,使其正常工作

关于Riley Lark发现的解决方案,我选择了使用装饰器模式,因此保留了原来的选项卡式面板。怎样?每个活动都会被注入(GIN)一个包含选项卡面板装饰器的演示者

例如:

  • Tab1Activity与Tab1Presenter一起注入,Tab1Presenter与Tab1Decorator一起注入,Tab1Decorator用Tab1ContentPanel装饰TabbedPanel(此面板包含Tab1选项卡上显示的所有小部件)

  • Tab2Activity被注入Tab2Presenter,而Tab2Presenter又被注入Tab2Decorator,Tab2Decorator用Tab2ContentPanel装饰同一个TabbedPanel(该面板包含要在Tab2选项卡上显示的所有小部件)


看起来很复杂,但是在创建了第一个decorator之后,它真的得到了回报,我能够保留TabbedPanel并利用框架中隐含的URL历史管理。

GWT中没有TabbedPanel-有Tabbanel,它只在怪癖模式下工作,还有TabbayOutPanel,它不被ActivityManager接受。我尝试过这种方法,但它不起作用。请显示代码或进一步详细说明。