1

メディア プレーヤー インスタンスを使用して音楽ファイルを再生しています。曲を一定時間再生した後、再生を停止したいと考えています。カウンタを減少させるスレッドを使用していますが、正しく動作しないことがあります。

4

2 に答える 2

3

これはあなたができることです..メディアプレーヤーで通常どおり再生し、同時にハンドラーを初期化し、必要な間隔でそのpostDelayedメソッドを呼び出します..そしてその中でMEdiaプレーヤーを停止します..このようなもの..

new Handler().postDelayed(new Runnable(){

//stop playing
}, 400);
于 2012-04-13T07:01:48.403 に答える
3

そのためにはハンドラを使用する必要があります

これを試して

in your onCreate use this 

  //start media player
  mp.start();


  mTimer.sendMessageDelayed(new Message(),5*10000);

あなたのアクティビティクラスにクラスを作成します

    private MusicTimer mTimer = new MusicTimer();

    private class MusicTimer extends Handler
    {
       @Override
       handleMessage(Message msg)
       {
           onTimerExpire();
       }  



        public void onTimerExpire()
        {
           //stop player here
        }

}

メディア プレーヤー オブジェクトのメンバ変数を作成すると、5 秒間再生されてから停止します

于 2012-04-13T07:11:06.797 に答える