【问题标题】:ConnectionRequest when back to the same formConnectionRequest 时返回相同的形式
【发布时间】:2016-07-13 22:44:58
【问题描述】:

这里点击 btn 时会打开 NextPage 表单。然后,当我单击后退按钮后,再次请求连接以打开以前的表单(即“主页”)。这样做需要时间和数据。所以我想要的是,一旦连接完成,我不想在回到相同的表单时再次建立连接。我怎样才能做到这一点?

@Override
protected void beforeHome(Form f) {
 btn.addActionListener((e)->{

  public void connectionForEmergencyListDetails(Form f, String categoryIdInt) {
    ConnectionRequest emergencyConnectionRequest = new ConnectionRequest() {

        @Override
        protected void postResponse(InputStream input) throws IOException {
           showForm('NextPage',null);
        }

    }
  }
 });
}

我尝试将数据存储在缓存(存储)中,并且它也可以在离线模式下工作。但是当有网络连接时,每次我进入表单时都会建立连接。当我返回相同的表单时,我不想再次建立连接,因为在我的情况下数据已经显示和存储。

【问题讨论】:

    标签: codenameone


    【解决方案1】:

    该代码无法编译。您将一个方法添加到一个 Lamba 闭包中,并且您不调用 addToQueue

    我猜你正在寻找的是Storage.exists,它可以让你确定你是否已经为连接存储了一些东西。

    【讨论】:

    • 谢谢,但还有一个问题,如果数据更新,Storage.exists 仍然为真。然后将不会检索更新的数据。有什么办法可以解决这种情况?
    • 我想要的是通过表单中的 connectionRequest 检索数据。然后通过底部或smth,应用程序进入下一个表单。之后,当我回到以前的表单时,我不想再连接请求了。即我想继续运行请求,但当我再次返回相同的表单时不运行。
    • 在服务器或存储中更新?这可能会让你感兴趣codenameone.com/javadoc/com/codename1/io/services/…
    猜你喜欢
    • 1970-01-01
    • 2020-05-06
    • 1970-01-01
    • 2012-07-17
    • 2017-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多