Android Media Player播放/暂停按钮

Dra*_*ray 22 android media-player

在我的项目中,我使用以下代码在Android媒体播放器中播放音乐文件

MediaPlayer mPlayer = MediaPlayer.create(MyActivity.this, R.raw.myfile);
mPlayer.start();
Run Code Online (Sandbox Code Playgroud)

以上是在播放按钮的onclick编码.我想通过再次点击相同的按钮来暂停播放.我的单个按钮用于播放/暂停.我该怎么做

Ruu*_*kis 54

您可以使用简单的if-check来处理暂停.试试这个:

if(mPlayer.isPlaying()){
    mPlayer.pause();
} else {
    mPlayer.start();
}
Run Code Online (Sandbox Code Playgroud)


Nik*_*tel 9

请尝试这个::

final Button bPlay = (Button) findViewById(R.id.bPlay);
MediaPlayer song1 = MediaPlayer.create(tutorialFour.this, R.raw.fluet);
Button bStop = (Button) findViewById(R.id.bStop);
bPlay.setWidth(10);

song1.setOnCompletionListener(new OnCompletionListener() {

        public void onCompletion(MediaPlayer mp) {

            bPlay.setText("Play");


        }
    });

bPlay.setOnClickListener(new View.OnClickListener() {

        public void onClick(View v) {
            // TODO Auto-generated method stub
            b = true;

            if (bPlay.getText().equals("Play") && b == true) {

                song1.start();

                bPlay.setText("Pause");
                b = false;
            } else if (bPlay.getText().equals("Pause")) {
                x = song1.getCurrentPosition();
                song1.pause();
                bPlay.setText("Resume");
                Log.v("log", "" + x);
                b = false;
            } else if (bPlay.getText().equals("Resume") && b == true) {
                song1.seekTo(x);
                song1.start();
                bPlay.setText("Pause");
                b = false;
            }


        }

    });
Run Code Online (Sandbox Code Playgroud)


And*_*lva 5

在按钮内单击检查mediaPlayer.isPlaying().如果媒体播放器正在播放其他错误,则返回true.

所以现在用这个标志值你可以制作一个if语句并切换到播放或暂停,就像这样,

button.setOnClickListener(new View.OnClickListener() {

        public void onClick(View view) {

            if (mediaplayer.isPlaying()) {
                mediaplayer.pause();
            } else {
                mediaplayer.start();
            }
        }
    });
Run Code Online (Sandbox Code Playgroud)