(demo需求: 假如有五个视频, 1 2 3 4 5 , 1播放完了开始播放2, 2播放完了开始播放3, .... 5播放完了要重新从1开始播放)
实现如下: (只写了关键的几行代码,相信大家一看就明白了)
private int count = 0; //定义一个成员变量private List<String> videoList = new ArrayList<>(); //定义一个存储视频URL的集合videoList.add("视频资源url1");videoList.add("视频资源url2");videoList.add("视频资源url3");videoList.add("视频资源url4");videoList.add("视频资源url5");
if (videoList.size() > 0) { //如果集合的长度大于0,表示有视频资源 playVideo(); } else { Toast.makeText(this, StringConstant.CHECKVIDEONULL,Toast.LENGTH_SHORT).show(); // toast提示视频资源找不到 }
private void playVideo() { videoView.setVideoPath(videoList.get(count)); //播放视频时,默认选择从第一个开始播放 videoView.start(); //监听视频的播放,视频播放结束后调用该方法 videoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() { @Override public void onCompletion(MediaPlayer mp) { count++; //视频资源变成下一个 if (count >= videoList.size()) { //表示已经全部播放完毕,让count变成0即可 count = 0; } playVideo(); } }); }
以上,代码也比较简单