簡體   English   中英

我想使用一個相同的按鈕來播放和暫停。第一次單擊我要播放它,第二次單擊我要暫停它

[英]i want to use one same button to play and pause.First click I want to play it & second click I want to pause it

當我再次單擊它時,我想播放它。 這是我的代碼,但是不起作用,因為當我再次單擊按鈕時,一次又一次地重復播放相同的音頻,而不是暫停。 請幫我

Button button_attention = (Button)findViewById(R.id.button_one);
        button_attention.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                 player=MediaPlayer.create(MainActivity.this, R.raw.alarm_effect);
                {
                    if (player.isPlaying()){
                        player.stop();}
                    else {
                        player.start();
                    }
                }

您每次在單擊處理程序中都重新定義媒體播放器,因此它將無法正常工作。 您需要將定義移到單擊處理程序之外,然后從內部引用它。

//Move it to here
player=MediaPlayer.create(MainActivity.this, R.raw.alarm_effect);

Button button_attention = (Button)findViewById(R.id.button_one);
    button_attention.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
                if (player.isPlaying()){
                    //This maybe should be pause.
                    player.stop();
                }
                else {
                    player.start();
                }

編輯:除了您對如何將其用於多個曲目的評論之外,您還應該執行以下操作。

實現一種方法,例如:

private void changeTrack(int resourceId){
    player = MediaPlayer.create(MainActivity.this, resourceId);
}

當您希望使用以下方法更改曲目時,只需調用此方法:

changeTrack(R.raw.MEDIA_NAME);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM