Android - 在循环内播放条件匹配的声音

时间:2016-02-11 04:14:53

标签: android audio

我想在按下要猜到的单词的正确字母时播放声音文件(在Android中)。以下是代码:

boolean letterMatch = false;
for(int k = 0; k < currentWord.length(); k++) {
  if(currentWord.charAt(k)==letterChar){
    letterMatch = true;
    MediaPlayer mp = MediaPlayer.create(this, R.raw.correct);                                               
    mp.start();
    correctLetters++;
 }}

我遇到的问题是,它只播放匹配但不会播放同一个单词中其他匹配字母的第一组字母的声音。请建议可能的修复...

2 个答案:

答案 0 :(得分:0)

MediaPlayer不是最好的解决方案。更好的解决方案是使用SoundPool。您在创建活动时将声音加载到其中,然后您可以在应用中立即触发它们立即播放。

答案 1 :(得分:0)

试一试。

  boolean letterMatch = false;
for(int k = 0; k < currentWord.length(); k++) {
if(currentWord.charAt(k)==letterChar){
letterMatch = true;
MediaPlayer mp = MediaPlayer.create(this, R.raw.correct); 
mp.setAudioStreamType(AudioManager.STREAM_MUSIC);
mp.setLooping(true);                                              
mp.start();
correctLetters++;

}}