1

インターネットから MediaPlayer オブジェクトにオーディオ ファイルをロードしたいと考えています。

それは私のコードです:

try {
    mp.setDataSource(AUDIO URL);
    mp.prepare();
    mp.start();
}
catch (IOException e) { e.printStackTrace(); }
catch (IllegalArgumentException e) { e.printStackTrace(); }
catch (IllegalStateException e) { e.printStackTrace(); }

問題は、オーディオの読み込みに時間がかかることです。

その後、オーディオをロードする前に、回転する進行状況ダイアログを表示するのを手伝ってください。

質問が不完全な場合は、減少を完了するように言ってください。

4

2 に答える 2

3

MediaPlayerにMediaPlayer.OnPreparedListenerを追加して、次のように準備しているときに進行状況ダイアログを表示する必要があります。

ProgressDialog progressDialog = ProgressDialog.show(this, 
                            "Loading Title", "Loading Message");
mp.setOnPreparedListener(new OnPreparedListener() {
        @Override
        public void onPrepared(MediaPlayer mp) {
               if (progressDialog != null && progressDialog.isShowing()){
                  progressDialog.dismiss();
               }
                mp.start();
         }
     });
于 2013-02-02T09:54:41.507 に答える
1

まったく重複していませんが、この質問には準備中に進行状況バーがあります。進行中のダイアログなどに変更するのは「非常に」簡単です。

メディア プレーヤーの準備中のプログレス バー

于 2013-02-02T09:53:23.360 に答える