0

最近、「再生」というボタンを作成しようとしました。このボタンを押すと、音楽を再生してからテキストを「停止」に変更したかったのですが、エラーがスローされてアプリが終了しました。これが私のコードです:

        mPlay.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            if(ourMusic.isPlaying()){
                ourMusic.pause();
                mDisplay.setText("Play");
            }else{
                ourMusic = MediaPlayer.create(MainActivity.this, R.raw.killthenoise);
                ourMusic.start();
                mDisplay.setText("Stop");
            }
        }
    });

そのため、一度ボタンを押すと再生され、もう一度押すと音楽が停止します。実際のコーディングに誤りはありません。ここに私のログキャットがあります: http://pastie.org/7970711

私はこのようなことに慣れていないので、何が起こっているのかあまり知りません。どんな助けでも大歓迎です。

4

2 に答える 2

0

グローバル変数 boolean flag=false; を追加します。

if(flag==false)
        {
            mp=MediaPlayer.create(this, R.raw.abc);
            mp.start();
            playbutton.setText("Pause");
            flag=true;
        }
        else if(mp.isPlaying()&&flag==true)
        {
            mp.pause();
            playbutton.setText("Play");
            flag=false;
        }

このコードは、アプリで再生/一時停止と同じボタンを使用する場合に機能します。お役に立てれば。

于 2016-05-10T18:32:12.183 に答える