【问题标题】:Does anybody have a GWT 2.1 CompositePlace example?有人有 GWT 2.1 CompositePlace 的例子吗?
【发布时间】:2010-11-17 16:41:07
【问题描述】:

我的应用程序使用复合材料,因此当前跟踪 SimplePanels 的 GWT 2.1 MVP 示例对我不起作用。

Google says 说我总是可以创建自己的 CompositePlace、CompositeActivity 和 CompositePlace.Tokenizer,但是……鉴于我的技能水平,我有点不愿意进入未知领域。

是否有任何 GWT 大师有适合我的工作示例?

谢谢

【问题讨论】:

  • 他们对 CompositePlace 等的想法适用于您有多个导航级别的情况 - 不适用于您的地点由 Composites 组成的情况。用您为 SimplePanel 构建的 Composite 尝试他们的代码。
  • 是的,但是当我这样做时,例如:activityManager.setDisplay(compositeWidget),我收到以下错误:ActivityManager 类型中的方法 setDisplay(AcceptsOneWidget) 不适用于参数 (compositeWidget)
  • 我的理论是 com.google.gwt.activity.shared.ActivityManager.setDisplay(AcceptsOneWidget display) 函数不接受合成

标签: gwt mvp


【解决方案1】:

我找到了一个blog from "Heros",它为我提供了答案。

原来诀窍是扩展 LayoutPanel 并实现 AcceptsOneWidget 接口。

然后您可以将任何 LayoutPanel 传递给 setWidget 函数。

这里是完整的代码:

public class OneWidgetLayoutPanel extends LayoutPanel implements AcceptsOneWidget {
    private IsWidget widget = null;

    @Override
    public void setWidget(IsWidget w) {
            if( widget != null) super.remove(widget);
            widget = w;
            if(w != null) super.add(w);
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-06-17
    • 1970-01-01
    • 1970-01-01
    • 2011-04-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多