在表单打开后请求连接,如在statemachine

时间:2017-06-08 17:59:25

标签: codenameone

我已从状态机转移到准系统代码。这里我在构造函数内部编写了代码(connectionRequest)。在打开新表单之前调用了连接。我需要的是:打开新表单后,应该调用连接。在statemachine中,如果我在postForm中请求连接,则表单将打开,然后调用connectionRequest。我怎么能在这里做到这一点?

Home.java

public class Home extends Form {
    public Home() {
        Button test = new Button("Test");
        add(test);

        test.addActionListener(e->{
            new Test().show();
        });
    }
}

Test.java

public class Test extends Form{
    public Test(){
        Label nameLabel = new Label("");
        add(nameLabel);

        ConnectionRequest cr = new ConnectionRequest() {

            @Override
            protected void readResponse(InputStream input) throws IOException {
                JSONParser jp = new JSONParser();
                Map parser = jp.parseJSON(new InputStreamReader(input));
                String name = (String) parser.get("name");
                nameLabel.setText(name);
            }
        };
        cr.setUrl("test.com");
        NetworkManager.getInstance().addToQueueAndWait(cr);
    }  
}

1 个答案:

答案 0 :(得分:0)

您可以使用addShowListener并在那里调用连接请求。