如果用户从表单B

时间:2016-01-11 10:45:37

标签: java codenameone

这可能很容易解决,但我已经坚持了一段时间。 正如标题所示我在表单A中有一个ContainerList,如果用户按下表单B中的“后退导航”,我想用新数据刷新。 表单B导航到单击表单A中的列表元素。 如果我使用“后退”导航来访问它,则不会运行表单A的代码。

我正在尝试在代码中执行此操作。

提前致谢。

1 个答案:

答案 0 :(得分:1)

表单B 中删除默认后退命令并创建一个新命令。

创建表单A 的新实例,并在新创建的后退命令中显示它。

如果您使用的是gui构建器表单,请执行以下操作:

@Override
protected void beforeFormB(Form f) {
    f.removeAllCommand();
    f.setBackCommand(null);
    Command back = new Command("Back") {

        @Override
        public void actionPerformed(ActionEvent evt) {
            Form backForm = (Form) createContainer("/theme", "Form A");
            backForm.showBack();
            beforeShow(backForm);
            postShow(backForm);

            //If your form was hand coded, do this instead
            new FormA().showBack();
        }
    };
    back.putClientProperty("uiid", "BackCommand");
    f.setBackCommand(back);
}