2011-05-15 85 views
4

我正在玩Android以瞭解API,我試圖編寫一個可以監聽音頻事件更改的活動。例如,當您按下按鈕時,我創建的活動會播放隨機鈴聲。該按鈕顯示一個文字說「隨機鈴聲」,但是當你按下按鈕時,它會顯示「停止」,按下它當然會停止播放鈴聲。音頻的Android事件監聽器

但是,問題是,當鈴聲停止播放時,按鈕仍然會顯示「停止」。

我環顧四周試圖找到一個事件監聽器,可以聽鈴聲停止播放,但我似乎無法找到一個。我已經看到了一些關於創建自己的聽衆的信息,但我對此沒有興趣(現在對我來說有點先進)。

是否存在此類型的事件偵聽器?

回答

6

我可能是錯的,但我認爲在播放完成時引發事件的唯一音頻類是MediaPlayer類。像這樣的東西應該工作...

public class MyActivity extends Activity 
    implements MediaPlayer.OnCompletionListener { 

    MediaPlayer player = null; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     player = new MediaPlayer(); 
     player.setOnCompletionListener(this); 
     ... 
    } 

    @Override 
    public void onCompletion(MediaPlayer mp) { 
     // Called when playback is complete 
     ... 
    } 
} 
+0

正是我在找什麼。謝謝! – Funkytown 2011-05-15 18:38:03

+0

@Funkytown:很高興能幫到你 – Squonk 2011-05-15 18:39:45