如何使用Vaadin Navigator显示CustomComponent?

时间:2014-07-16 15:51:30

标签: java vaadin

我正在使用Vaadin框架,我正试图弄清楚如何使用Navigator.navigateTo()方法显示CustomComponent。

我有一个班级

public class MyView extends CustomComponent implements View {
...
}

它有一个布局成员。

当我调用navigator.navigateTo(“view”,new MyView());我什么都没看到。

有关如何使用导航器显示CustomComponent的任何想法吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

我认为这里的问题不是CustomComponent,而是使用" navigateTo"

你需要这样:

MyUiContent implements ViewDisplay { 
    private HorizontalLayout mainViewLayout;

    public Component init() {
        this.mainViewLayout = new HorizontalLayout();
        return this.mainViewLayout;
    }
    @Override
    public void showView(View view) {
        //handle view display
        mainViewLayout.removeAllComponents();
        mainViewLayout.addComponent(view);
    }
}

MyUi extends UI{
    // the rest of the initialization....
    @Override
    protected void init(VaadinRequest request) {
        MyUiContent myUi = new MyUiContent();
        setContent(myUi.init());
        setNavigator(new Navigator(this, myUi);
    }
}