以前の ListView アクティビティについて質問があります。
ソケット接続を使用して更新を続けている ListView があります。リスト行のいずれかをクリックすると、前の ListView 画面に戻ったときに次の画面に移動できます。ListView は再び更新を開始しますが、維持したい次の画面にいるときにバックグラウンドで ListView を更新します。
次の画面にいるときに、前の画面を維持したいようなものです。
以前の ListView アクティビティについて質問があります。
ソケット接続を使用して更新を続けている ListView があります。リスト行のいずれかをクリックすると、前の ListView 画面に戻ったときに次の画面に移動できます。ListView は再び更新を開始しますが、維持したい次の画面にいるときにバックグラウンドで ListView を更新します。
次の画面にいるときに、前の画面を維持したいようなものです。
あなたのデータをロードするために使用しているコードは、ListView
あなたのActivity
. たとえば、あなたの中にAsyncTask
orがあり、それを使用してデータをダウンロードしたり、データを取得してリストに入力するために必要なことを行ったりします。また、ライフサイクルメソッドのいずれかで開始すると仮定します。Thread
Activity
ListView
Activity
onCreate()
その場合は、リストのデータを取得するために使用されるコードをアクティビティ コードから分離することを検討する必要があります。
これを行う 1 つの方法はService
、アプリケーションの残りの部分とは独立して実行できる を使用し、リストのデータの取得に伴うすべての面倒な作業を行うことです。アプリケーションのどこからでもサービスと通信できます。はService
、データをデータベースに保存できます。その後、Activity で行う必要があるのは、データベースにクエリを実行し、アダプターにデータを入力して、遅延なく最新のデータを取得することだけです。
サービスの詳細については、http: //developer.android.com/reference/android/app/Service.htmlを参照してください。
ポールが提案したことを行うことができます(そしておそらくそうすべきです) 。またはFragments
を使用して画面を切り替える方法に変更することもできますViewFlipper
。このようにして、別のページで何か他のことをしながら AsyncTask
orを実行します。Thread