双声android

时间:2014-09-19 20:13:38

标签: android audio onclick android-mediaplayer

package project.kalmas;

import android.app.Activity;
import android.content.Intent;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.View;

public class one extends Activity {

    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.one);
    }

    public void onclick2(View view)
    {
        Intent i=new Intent("project.two");
        startActivity(i);
    }
    public void onclick3(View view)
    {
        MediaPlayer mp= MediaPlayer.create(this,R.raw.one);
        if(mp.isPlaying()){
            mp.stop();
        } else {
            mp.start();
        }

    }

} 当我点击按钮它播放声音然后我再次点击按钮停止它不会停止并再次播放声音,这导致一次播放双重声音。请帮助

1 个答案:

答案 0 :(得分:1)

您每次点击都会创建一个新的MediaPlayer,而不是保留对第一个的引用。播放声音的MediaPlayer与您呼叫MediaPlayer的{​​{1}}不同。您需要将isPlaying()变量转换为字段,以便保留对它的引用。

我想这样的事情会起作用:

mp