如何在Android应用程序中自动启动多个视频(脱机)
早上好,我用videoview创建了一个活动,它可以自动启动并以循环模式从uri加载视频。 如何以循环模式加载2或3个视频? 例如,从Uri加载(xxx1、xxx2、xxx3)?如何在Android应用程序中自动启动多个视频(脱机),android,eclipse,video,android-intent,android-videoview,Android,Eclipse,Video,Android Intent,Android Videoview,早上好,我用videoview创建了一个活动,它可以自动启动并以循环模式从uri加载视频。 如何以循环模式加载2或3个视频? 例如,从Uri加载(xxx1、xxx2、xxx3)? Thaks Prevance我认为您可以创建一个RecyclerView或ListView或ScrollView以及相应的适配器或子视频视图 在Uri[]或ArrayList中有视频Uri的列表 在各自的getView或for(Uri:mUris)循环中调用这些函数 下面是播放视频的单个实例 private void
Thaks Prevance我认为您可以创建一个RecyclerView或ListView或ScrollView以及相应的适配器或子视频视图 在Uri[]或ArrayList中有视频Uri的列表 在各自的getView或for(Uri:mUris)循环中调用这些函数 下面是播放视频的单个实例
private void playVideo(Uri uri) {
//set the media controller buttons
if (mediaControls == null) {
mediaControls = new MediaController(AndroidVideoViewExample.this);
}
//initialize the VideoView
myVideoView = (VideoView) findViewById(R.id.video_view);
try {
//set the media controller in the VideoView
myVideoView.setMediaController(mediaControls);
//set the uri of the video to be played
myVideoView.setVideoURI(uri);
} catch (Exception e) {
Log.e("Error", e.getMessage());
e.printStackTrace();
}
//we also set an setOnPreparedListener in order to know when the video file is ready for playback
myVideoView.setOnPreparedListener(new OnPreparedListener() {
public void onPrepared(MediaPlayer mediaPlayer) {
// close the progress bar and play the video
progressDialog.dismiss();
//if we have a position on savedInstanceState, the video playback should start from here
myVideoView.seekTo(position);
if (position == 0) {
myVideoView.start();
} else {
//if we come from a resumed activity, video playback will be paused
myVideoView.pause();
}
}
});
}
您将有多个视频视图,每个视图都加载自己的视频。好的,但我如何启动它?不可能调用同一个视频视图,当完成第一个视频时,另一个视频?我的想法是使用相同的videoview,在完成第一个视频时调用另一个uri..videoview.setOnCompletionListener(新MediaPlayer.OnCompletionListener(){@Override public void onCompletion(MediaPlayer MediaPlayer){//finish();}});我已经用这段代码解决了问题,但它没有从第一个开始重新启动:videoView.setOnCompletionListener(new OnCompletionListener(){@Override public void onCompletion(MediaPlayer mp){Uri videoUri=Uri.parse(“android.resource://”+MainActivity.this.getPackageName()+“/raw/”+videoArray[3]);videoView.setVideoURI(videoUri);videoView.start();});试试这个。videoView.setOnCompletionListener(新的OnCompletionListener(){@Override public void onCompletion(MediaPlayer mp){videoView.start();}});没有这些条件?Uri videoUri=Uri.parse(“android.resource://“+MainActivity.this.getPackageName()+”/raw/“+videoArray[3]);setVideoURI(videoUri);