如何在Android中通过按下相同的按钮来启动/停止歌曲(bug实现)



我正在学习安卓应用程序开发,我有一个按钮,点击后会播放歌曲。代码如下:

Button b=(Button)findViewById(R.id.button1);
    final MediaPlayer mp = MediaPlayer.create(this, R.raw.song);
    b.setOnClickListener(new View.OnClickListener()
    {
        public void onClick(View v)
        {
            if(!mp.isPlaying())
                mp.stop();
            else
                mp.start();
        }
    });

现在,一旦我按下按钮,媒体就会启动,如果我再次按下,它就会停止。然而,当我第三次按下它时,它无法再次统计。我该如何解决此问题?感谢

您需要将mp.stop更改为mp.pause

条件似乎是错误的,即如果歌曲尚未播放,则播放该歌曲

Button b = (Button) findViewById(R.id.button1);
    final MediaPlayer mp = MediaPlayer.create(this, R.raw.song);
    b.setOnClickListener(new View.OnClickListener() { 
        public void onClick(View v) { 
            if(mp.isPlaying())
                mp.stop();
            else 
                mp.start();
        } 
    });

最新更新