2016-03-26 11 views
2

ここでは、btnをクリックするとNextPageフォームが開きます。その後、戻るボタンをクリックすると、以前のフォーム(つまり「ホーム」)を開くために接続が再度要求されます。これを行うには時間とデータの両方が必要です。だから私が望むのは、接続が完了したら、同じフォームに戻るときに接続を再確立したくないということです。どのように私はそれを達成することができますか?同じフォームに戻るときのConnectionRequest

@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); 
     } 

    } 
    } 
}); 
} 

私が試したことは、私はキャッシュ(記憶装置)にデータを保存し、それが同様にオフラインモードで動作することです。しかし、ネットワーク接続があると、私はフォームに行くたびに接続を確立します。データが既に表示され、私の場合にも格納されているので、同じフォームに戻ったときに再び接続を確立したくありません。

答えて

1

そのコードはコンパイルされません。メソッドをlambaクロージャーに追加し、addToQueueを呼び出さないでください。

あなたが探しているものがStorage.existsだと思っています。接続用のストレージに既に何かがあるかどうかを判断できます。

+0

ありがとうございますが、もう1つの問題があります。データが更新されると、Storage.existsは引き続きtrueになります。更新されたデータは取得されません。この状態を解決するために何ができるのですか? – beck

+0

私が望むのは、データがフォームのconnectionRequestを通じて取得されるということです。その後、底や澄んだりを通って、アプリは次の形に行きます。その後、前のフォームに戻ると、connectionRequestをもう一度したくない。つまり、私はリクエストを先に実行したいが、同じフォームに再び戻ってくるときは実行しない。 – beck

+0

サーバーまたはストレージで更新されましたか?これはあなたにとって興味深いかもしれません。https://www.codenameone.com/javadoc/com/codename1/io/services/CachedDataService.html –

関連する問題