0
  • アクティビティでは、AI がサーバーからデバイスにいくつかのファイルをダウンロードします。
  • progressBar は、現在のダウンロードの進行状況を示します。

  • 一度に複数のダウンロードを行うことができ、アクティビティ B にすべてのダウンロードのリストを各ダウンロードの progressBar で表示させたいと考えています。

-問題は、メニューから開始したときに、各ダウンロードの進行状況をアクティビティ B に共有する方法がよくわからないことです。

4

3 に答える 3

2

を使用してファイルをフェッチするServiceのではなく、ダウンロードを設定します。AsyncTask次に、Activity上記のダウンロードの進行状況に関心のある人は、をバインドしServiceて進行状況の更新のリスナーを登録し、それぞれのに適切なUIに反映することができますActivity

于 2012-05-04T17:31:08.393 に答える
1

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

于 2012-05-04T17:33:06.057 に答える
0

1)Application Object(Application Supperクラスを拡張したクラス)内にプログレスバーを宣言します。これで、アプリケーション全体でプログレス バーにアクセスできるようになりました。

2) アクティビティ A のプログレス バーを更新します。

3) getApplication(); を呼び出して、アクティビティ B の ProgressBar のインスタンスを取得します。

于 2012-05-04T17:53:11.460 に答える