2012-05-04 4 views
0
  • アクティビティでは、サーバーからデバイスに複数のファイルをダウンロードします。
  • progressBarには、現在のダウンロードの進行状況が表示されます。2つの異なるアクティビティでプログレスバーの進行状況を共有する方法

  • 複数のダウンロードを同時に行うことができます。アクティビティBには、ダウンロードごとにprogressBarを使用したすべてのダウンロードのリストが表示されます。

- 問題は、メニューから起動したときに、各ダウンロードの進行状況をアクティビティBに共有する方法がわかりません。

答えて

1

AsyncTaskを使用してファイルを取得する代わりに、Serviceをダウンロードするように設定してください。次に、前記ダウンロードの進行に関心のあるActivityは、Serviceをバインドし、進行状況の更新のためのリスナーを登録し、それぞれのActivityに適切なUIに反映させることができます。

+0

ありがとう、あなたの解決策は正しいようです、私はそれをそうしようとします! – kylexy1357

0

私は同様のことをしており、地元の放送を使って成功しています。私はサービスに含まれているすべてのアップロードロジックを持っています。サービスはAsyncタスクを使用しています。進行状況を更新する必要がある場合、ブロードキャストを送信します。私の活動のonResumeでは私は通知を受け取るために登録し、onPauseは登録を解除します。これにより、現在のアクティビティを更新できます。

1

1)アプリケーションオブジェクト内で進捗バーを宣言する(Application Supperクラスを拡張するクラス)。今すぐプログレスバーはアプリケーション全体からアクセス可能です。

2)活動A.

3で更新プログレスバー)getApplication()を呼び出すことによって、アクティビティBにプログレスバーのInstenceを取得します。

+0

ありがとうございますが、私はいくつかのProgressBarsを1つではなく、複数のダウンロードをparrallelで作成したいと思います。 – kylexy1357

関連する問題