如何在 VideoView 中一个接一个地播放多个视频 android

how to play multiple video one by one in VideoView in android

public class PlayMultipleVide extends Activity {

  VideoView videoView;
  @Override protected void onCreate(@Nullable Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.multiplevideo);
    videoView=(VideoView) findViewById(R.id.videoview);
    MediaController mediaController= new MediaController(this);
    mediaController.setAnchorView(videoView);
    List<String> filedata=GetFiles("/storage/emulated/0/Android/data/com.example.android.camera2video/files");
    //specify the location of media file
    Uri uri=Uri.parse("/storage/emulated/0/Android/data/com.example.android.camera2video/files/"+filedata.get(0));
    //Setting MediaController and URI, then starting the videoView
    videoView.setMediaController(mediaController);
    videoView.setVideoURI(uri);
    videoView.requestFocus();
    videoView.start();
  }

  public static ArrayList<String> GetFiles(String DirectoryPath) {
    ArrayList<String> MyFiles = new ArrayList<>();
    File f = new File(DirectoryPath);
    f.mkdirs();
    File[] files = f.listFiles();
    if (files.length == 0)
      return null;
    else {
      for (File file : files) MyFiles.add(file.getName());
    }
    return MyFiles;
  }
}

这是我的代码。我有一个文件夹文件。里面有 5 个视频,我想在 VideoView 中一一播放。我不知道如何在 videoview 中一次一个地播放视频。请建议我。

尝试将 listener 设置为您的 videoView:

void setOnCompletionListener (MediaPlayer.OnCompletionListener l)

MediaPlayer.OnCompletionListener 会告诉您视频到达 EOS(流结束)的时间。然后用新的视频 Uri 重新开始播放。继续这样做,直到列表中有 uris (List filedata)。