在音乐播放器中,播放模式一般放在音乐播放完毕后自动识别,如下给出逻辑代码,可根据需要添加合适的代码
public static final int ALL = 0;//全部循环
public static final int SINGLE = 1;//单曲循环
public static final int RANDOM = 2;//随机
// 一首歌播放完成后(这里设置播放模式)
public class Completed implements OnCompletionListener
{
       @Override
       public void onCompletion(MediaPlayer mp)
       {
             if(playMode == ALL)//全部循环
             {
                   if (position == listMusic.size() - 1)//默认循环播放
                   {
                         position = 0;// 第一首
                   }
                   else
                   {
                         position++;
                   }
             }
             else if(playMode == SINGLE)//单曲循环
             {
                   //position不需要更改
             }
             else if(playMode == RANDOM)//随机
             {
                   position = (int)(Math.random()*listMusic.size());//随机播放
             }
             elseSet();//其他播放的处理
       }
}
;
制作单曲循环时,最好不要像如上代码所设计,由于没有给出实际的position,程序可能跳出BUG,甚至崩溃,我所实现的单曲循环是监听用户的模式选择,当音乐播放完毕之后,重新启动MediaPlayer就可以了