1

我想在游戏中单击按钮时播放声音。我可以使用以下代码轻松做到这一点

mp = MediaPlayer.create(getApplicationContext(), R.raw.sound);
mp.start();

问题是,我的点击率比播放我的声音剪辑的持续时间要快。如何停止它并在第二次或第三次单击时再次播放等等。

我想匹配声音播放以匹配我的点击率。

感谢 Abhinav Tyagi

4

3 回答 3

1

首先,您应该MediaPlayer只用于大文件,如音乐。对于播放音效,SoundPool是要走的路。

此处提供了有关播放媒体的出色教程。

单击您的按钮,立即按顺序调用soundPool.stop()soundPool.play()以停止和开始您的音频播放。

于 2012-09-22T16:51:52.123 回答
0

您可以调用 MediaPlayer.Stop 停止它播放声音。您还可以调用 MediaPlayer.Reset 将其返回到空闲状态。

于 2012-09-22T16:51:37.270 回答
0
public class MainActivity extends AppCompatActivity {

MediaPlayer mplayer;

public void startPlay(View view) {
    mplayer.start();
}

public void stopPlay(View view) {
    mplayer.pause();
}

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    mplayer = MediaPlayer.create(this, R.raw.laugh);
}

}

于 2017-06-17T06:55:59.200 回答