目的:我这边是想做类似于斗鱼直播里的视频模块的视频列表播放形式。

思路:使用第三方插件--JiaoZiVideoPlayer。GitHub地址:https://github.com/lipangit/JiaoZiVideoPlayer

然后下载代码,根据自己需要的样式去找相应的代码进行研究。

效果图如下:

使用步骤:

(1)添加远程依赖:

/*调用Video视频播放器*/
implementation 'cn.jzvd:jiaozivideoplayer:6.3.1'

(2)在布局文件中使用:

<cn.jzvd.JzvdStdandroid:id="@+id/Layout_Item_Video_JzVdStd"android:layout_width="match_parent"android:layout_height="200dp"></cn.jzvd.JzvdStd>

(3)在视频列表RecyclerView的数据适配器中调用(只贴相关代码):

holder.jzvdStd.setUp(tb_videoPlay.getVideoUrl(), "简直不可思议啊【" + position + "】", Jzvd.SCREEN_WINDOW_NORMAL);
Glide.with(mContext).load(tb_videoPlay.getThumb()).asBitmap().placeholder(R.mipmap.bg_live).error(R.mipmap.bg_live).into(holder.jzvdStd.thumbImageView);

(4)在清单文件中配置相应的Activity:

<activityandroid:name=".MainActivity"android:screenOrientation="portrait"android:windowSoftInputMode="adjustPan"android:configChanges="screenSize|keyboardHidden|orientation">

(5)如果想要某一个item离开屏幕的时候,该item的视频播放停止的效果。那么RecyclerView需要对item离开的状态进行监听,添加监听OnChildAttachStateChangeListener,代码如下:

rViewAnchorVideoList.setAdapter(videoAdapter);
rViewAnchorVideoList.addOnChildAttachStateChangeListener(new RecyclerView.OnChildAttachStateChangeListener() {@Overridepublic void onChildViewAttachedToWindow(View view) {}@Overridepublic void onChildViewDetachedFromWindow(View view) {Jzvd jzvd = view.findViewById(R.id.Layout_Item_Video_JzVdStd);if (jzvd != null && jzvd.jzDataSource.containsTheUrl(JZMediaManager.getCurrentUrl())) {Jzvd currentJzvd = JzvdMgr.getCurrentJzvd();if (currentJzvd != null && currentJzvd.currentScreen != Jzvd.SCREEN_WINDOW_FULLSCREEN) {Jzvd.releaseAllVideos();}}}
});

(6)最重要的一点,别忘了添加用户权限:

<uses-permission android:name="android.permission.INTERNET"/>

PS:如果相应其他效果的,去多看看源码吧。

Android中使用JiaoZiVideoPlayer来实现视频列表播放的效果相关推荐

  1. 公众号如何实现视频列表播放视频的功能

    阿酷TONY原创文章,2020-1-14 公众号如何实现视频列表播放视频的功能 使用场景要求: 在公众号中,添加视频列表播放的效果 1.创建视频列表专辑 进入酷播云管理平台,打开"视频列表& ...

  2. android 播放3gp音频,说说 Android 中如何操作音频与视频文件

    1 音频 在 Android 中播放音频文件用的是 MediaPlayer 类,它提供了一些较为常用的控制方法. 方法 说明 setDataSource() 指定音频文件位置. prepare() 准 ...

  3. Android中RecyclerView点击item展开列表详细内容(超简单实现)

    请注明出处: http://blog.csdn.net/qq_23179075/article/details/79230457 Android中RecyclerView点击item展开列表详细内容( ...

  4. css 视频播放列表,jquery结合CSS实现的多样式多视频列表连播效果源码

    jquery结合CSS实现的多样式多视频列表连播效果源码是一段实现了右侧缩略图片+文字列表显示所有视频.右侧文字列表显示所有视频及底部缩略图片+文字列表显示所有视频三种样式的视频连播效果代码,本段代码 ...

  5. 微信公众号如何实现视频列表播放视频的功能

    原创文章,2020-1-7,载转请说明来自CSDN 微信公众号如何实现视频列表播放视频的功能 使用场景要求: 在微信公众号中,添加多个视频,且可实现视频列表的连播功能. 要求观看视频时无广告.稳定流畅 ...

  6. 这就是视频列表二维码,一个二维码搞定视频列表播放

    文章原创  转载请注明出处来自CSDN 2020-1-5  //  我是视频砖家,只关注视频应用. 我以前写视频二维码的教程,今天再上一个原创的视频列表二维码教程吧 // 视频列表二维码教程基于酷播云 ...

  7. jQuery层叠式视频列表播放

    jQuery层叠式视频列表播放 jQuery悬挂层叠式的图片列表点击视频播放,带左右按钮控制上下一个视频轮播切换效果.这是一款视频列表播放布局代码. 演示地址 下载地址

  8. Android中探究抖音短视频的动态壁纸功能以及拓展功能使用

    一.前言 最近玩抖音感觉都快废了,所以我决定不玩了我要学习所以先从他的动态壁纸学起,因为整个应用中也就是动态壁纸有点好玩的技术,而且也就是抖音能做这个功能,其他的短视频或许做不了比如快手如果要做你觉得 ...

  9. 类似搜狐视频app视频列表播放

    有些视频app有一个视频列表播放功能,例如搜狐视频app的热点模块,腾讯视频app的热点模块等.进入此页面会自动播放视频,滑动页面还会自动切换播放视频,同时支持横竖屏切换,确实比较方便.研究了下,实现 ...

最新文章

  1. 浅谈敏捷开发及Scrum工具leangoo(三)
  2. 考研-专业课-数据结构
  3. redis10---Setbit 的实际应用
  4. 你必须了解的反射——反射来实现实体验证
  5. Java poi插件导出Excel文件合并多sheet页
  6. SpringBoot启动banner更改
  7. 解决windows7您当前无权访问该文件夹的问题
  8. wx import require的理解
  9. python迅雷_迅雷下载链接解析器。
  10. moxy json介绍_MOXy的对象图– XML和JSON的输入/输出局部模型
  11. redis rdb aof区别_Redis 持久化之 RDB 与 AOF 详解
  12. 【Git入门之二】基本术语
  13. 互联网IT工程师需要具备哪些技能?
  14. 说说JDBC 操作数据库的步骤?
  15. 五一劳动节致全体技术同胞书
  16. 实例:用C#.NET手把手教你做微信公众号开发(20)--使用微信支付线上收款:jsapi方式
  17. 使用GHOST镜像文件在VMWARE WROKSTATION上安装系统(图)
  18. java之枚举类型enum
  19. Linux虚拟网络基础——veth pair
  20. Flume之——配置多个Sink源(一个Source对应多个Channel和Sink)

热门文章

  1. html中怎么置顶文本框,如何同时选中多个文本框
  2. node如何接收ajax post方式传来的json类型数据
  3. idea破解 2018.2.3
  4. 机器人空间采样算法研究现状简述
  5. Guriddo jqGrid的学习-入门
  6. 积跬步至千里 || python 中的向量格式与运算
  7. 究竟什么是三网合一?
  8. 极简壁纸_桌面壁纸推荐_20190120
  9. SpringBoot (一) 入门、配置、自动配置源码剖析理解
  10. ERP对接过程中遇到的问题总结(webapi)