ExoPlayer内置了一个播放列表,可以通过ExoPlayer实例来对播放列表进行增删改查。
在上篇文章中,我们使用setMediaItem方法来添加播放的视频,这个方法调用的时候会先把列表清空,再添加该视频,也就是说,这个方法只支持播放单个视频。
mPlayer.setMediaItem(mediaItem);
如果需要添加多个视频,调用addMediaItem方法即可。
MediaItem mediaItem = MediaItem.fromUri("http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4"); MediaItem mediaItem2 = MediaItem.fromUri("http://vjs.zencdn.net/v/oceans.mp4"); mPlayer.addMediaItem(mediaItem); mPlayer.addMediaItem(mediaItem2);
视频列表的相关方法还有很多,常用的如下所示。
//清空播放列表 mPlayer.clearMediaItems(); //根据下标来移除视频 mPlayer.removeMediaItem(0); List播放模式itemList = new ArrayList(); MediaItem mediaItem = MediaItem.fromUri("http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4"); MediaItem mediaItem2 = MediaItem.fromUri("http://vjs.zencdn.net/v/oceans.mp4"); itemList.add(mediaItem); itemList.add(mediaItem2); //添加多个视频 mPlayer.addMediaItems(newItems,true);
播放模式是非常常见的功能,ExoPlayer有单循环、列表循环和单次列表播放三种。
//单次列表播放,播放完了就停止 Player.REPEAT_MODE_OFF; //循环播放单个视频 Player.REPEAT_MODE_ONE; //列表循环 Player.REPEAT_MODE_ALL; mPlayer.setRepeatMode(Player.REPEAT_MODE_ONE);播放列表监听
在上篇文章中讲到了Player.Listener的基本用法。本篇介绍列表监听的常用方法。
mPlayer.addListener(new Player.Listener() { //当一个视频切换到另一个视频时触发 @Override public void onMediaItemTransition(@Nullable MediaItem mediaItem, int reason) { //更新UI } ... }最后
本篇讲述了播放列表的相关功能,下一篇讲述自定义布局的相关内容。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)