我有一个视频应用程序:
public class MainActivity extends Activity {
int i = 0;
List<String> videoPathes = new ArrayList<String>();
private VideoView videoview;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
videoview = (VideoView) findViewById(R.id.videoView_video);
videoPathes.add(Environment.getExternalStorageDirectory().getAbsolutePath()+"/intros/intro1.mp4");
videoPathes.add(Environment.getExternalStorageDirectory().getAbsolutePath()+"/intros/intro2.mp4");
videoPathes.add(Environment.getExternalStorageDirectory().getAbsolutePath()+"/intros/intro3.mp4");
videoview.setVideoPath(videoPathes.get(i));
videoview.start();
videoview.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
public void onCompletion(final MediaPlayer mp){
i = (i + 1) % videoPathes.size();
videoview.setVideoPath(videoPathes.get(i));
videoview.start();
}
});
}
}当应用程序启动时,运行第一个视频(“Intu1.mp4”)。这个应用程序有20个视频。我需要的是,当我打开应用程序,它开始播放随机视频。
示例:
Now
该应用程序从第一个视频开始:"intro1.mp4“,然后继续使用"intro2.mp4”和>"intro3.mp4“。(等等)
我需要
从随机视频开始:“内向2.mp4”、“内向3.mp4”、“内向1.mp4” 第二次:“内向1.mp4”,“内向2.mp4”,“内向3.mp4” 下一次:“内向3.mp4”,“内向1.mp4”,“内向2.mp4” (等等)
因此,从任何视频开始(内向11.mp4),然后继续下一个视频(intro12.mp4),然后继续播放next (intro13.mp4)和next (内向14.mp4)。
我的应用程序有这个可能吗?
谢谢你的支持。
发布于 2014-01-05 00:57:49
最简单的方法是创建视频列表,其中的顺序是随机的。未编译代码:
List randomList = new ArrayList();
Random random = new Random();
int pathsCount = videoPathes.size();
for (int i = 0; i < pathsCount; i++){
int randomPathIndex = random.nextInt(videoPathes.size();
String path = videoPathes.get(randomPathIndex));
videoPathes.remove(randomPathIndex);
randomList.add(path);
}我认为这是可行的:)
https://stackoverflow.com/questions/20928594
复制相似问题