2017-05-05 110 views
0

我是一名学生程序员,所以请原谅任何菜鸟错误等等。对于一个任务,我尝试使用媒体播放器播放阵列中的歌曲。阵列中的第一首歌曲播放正常,但下一首和最后一首歌曲按钮是我的问题所在。任何人都可以提出从我的音乐阵列播放下一首/最后一首歌曲的方法吗?任何帮助表示赞赏,再次,请原谅简单的错误。如何使用媒体播放器播放阵列中的下一首歌

没有包括相关代码。

// Arrays of sound files private int[] audioFileArrayChill = {R.raw.vanilla_summer, R.raw.lifeline, R.raw.remember_the_mountain_bed};

// Listen for the end of the track 
    mediaPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() { 
     @Override 
     public void onCompletion(MediaPlayer mp) { 
      for (int x = 1; x <= audioArray.length; x++) { 
       currentIndex++; 
       // Play next song in array 
       mp.selectTrack(audioArray[x]); 
       mp.start(); 

      } 


     } 
    }); 


// Assigning onClickListener to last track button 
    lastTrack.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      mediaPlayer.reset(); 
      mediaPlayer.selectTrack(audioArray[currentIndex - 1]); 
      try { 
       mediaPlayer.prepare(); 
       mediaPlayer.start(); 
      } catch (IOException e) { 
       Log.e("Error", "ERROR"); 

      } 

     } 
    }); 


// Assigning onClickListener to next track button 
    nextTrack.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      mediaPlayer.reset(); 
      mediaPlayer.selectTrack(audioArray[currentIndex + 1]); 
      try { 
       mediaPlayer.prepare(); 
       mediaPlayer.start(); 
      } catch (IOException e) { 
       Log.e("Error", "ERROR"); 

      } 


     } 
    }); 
+0

问题是什么是什么呢?你记录错误吗?当你按下下一首或最后一首歌时究竟发生了什么? – ChrisStillwell

+0

当我按下其中一个按钮时,应用程序崩溃 - 我觉得我错误地使用了媒体播放器功能(由于缺乏经验),我将重新运行应用程序并很快发布错误日志! – ThunderGrad

回答

0

使用下面的一个按钮的代码单击

nextTrack.setOnClickListener(new View.OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     mp.stop(); 
     mp.reset(); 
     mp.setDataSource(audioArray[currentIndex + 1]); 
     mp.prepare();    
     mp.start(); 
    } 
+0

感谢您的回复 - 但是在setDataSource上出现错误,“无法解析方法”。我应该使用循环吗? – ThunderGrad

+0

什么是用来播放音乐的 – vishal

相关问题