最新要闻
- 剧版《三体》高热开播:收视率蹿升至第一、破腾讯视频记录
- 尼泊尔客机坠毁:机上72人不幸全部遇难
- AMD显卡的尴尬!一个月了 两大品牌仍然没有RX 7900
- 世界新动态:中国首次全尺寸超导航行试验成功!时速50公里、冲击1000公里
- 环球热头条丨糖醋排骨里竟然藏着"量子点"!它咋这么厉害?
- 每日焦点!小朋友把山东的雪带回福建:半路化了 崩溃大哭
- 天天日报丨尼泊尔客机坠毁遇难人数升至68人:没有中国公民
- 环球焦点!王思聪打人后行政拘留为什么能暂缓执行?罗翔科普
- 天天观速讯丨AMD悄悄公布31个CPU漏洞:4个极危险、Zen4高枕无忧
- 男子花32万买比亚迪海豹 内心崩溃:汽配城都没这么难看
- 焦点要闻:节能版酷睿i9-13900T现身:35W战平12900K
- 观天下!腾讯开出48人惩治名单 马化腾曾称内部贪腐“触目惊心”
- 【环球热闻】110度高烧不退!AMD RX 7900 XTX退换货率高达11%
- 为啥北方二十三过小年 南方却是二十四?和康熙乾隆有关
- 观察:无广告一年免费用!通信UOS家庭版22.0开始推送
- 男子买898元零食P图付款 被抓现行:实际支付了1分钱
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
世界今日报丨Recyclerview列表视频自动播放方案
列表中自动播放视频,常规方案是在每个 xml 中写入视频布局,然后在滑动时获取当前的下标,播放此下标的视频
弊端:播放容易出错,需要精准控制好停止播放操作,并且适配器中容易触发多次刷新,导致执行多次同样的操作,不易控制离开停止等操作,增加了布局的负担,影响滑动流畅度,无法复用...
(资料图片)
使用过的都比较清楚这些弊端,所以需要一套统一的播放逻辑控制,并且播放中的视频只有一个,方便控制
大致思路就是在当前的下标布局中,动态注入一个视频布局,然后去控制这个布局的状态,滑动时移除
优点:跟展示列表分离,容易控制,可复用,不影响列表滑动流畅度
实现流程
1、在xml中编写好播放布局,然后inflate 加载布局 videoLayout,并且绑定生命周期控制释放,在把需要监听的 Recyclerview 传进来,设置好滑动监听
2、获取到当前下标,并且拿到该下标(viewholder)的根布局
3、拿到该下标的实体类(播放路径等)
4、拿到的根布局调用系统方法viewholderRoot.addView(videoLayout) ,把需要播放的布局添加进 viewholder 中
5、使用WeakReference 弱引用持有当前工具类,然后在 Handler 中去控制播放等方法
private class WeakReferenceHandler(tag: AutoPlayVideoUtils) : Handler() { private val mView = WeakReference(tag) override fun handleMessage(msg: Message) { when (msg.what) { MSG_LOAD_VIDEO -> mView.get()?.startVideo(msg.obj as VideoData) } } }
6、在监听的滑动事件中判断可见范围,然后移除播放布局videoLayout
root?.parent?.let { if (it is ViewGroup) { val video = root.findViewById(R.id.video_player_view) if (video?.isPlaying == true) { video.pause() video.stop() } it.removeView(root) videoPlayerView = null rootView = null } }
此时基本流程完成
实际项目中还有很多需要处理
比如滑动时如果可见下标想等,需要跳过逻辑,不用执行播放操作,然后滑动中监听是否可见,什么时候添加布局跟移除布局
比如在生命周期中恢复,暂停,释放
所幸 Recyclerview 中有滑动停止监听,可以很好的监听控制
-
观天下!QSAN A Quantum-probability based Signed Attention Network for Explainable Fa
一、摘要在社交媒体上的虚假信息检测具有挑战性,因为它通常需要烦冗的证据收集,但又缺乏可用的比较信...
来源: 世界今日报丨Recyclerview列表视频自动播放方案
观天下!QSAN A Quantum-probability based Signed Attention Network for Explainable Fa
剧版《三体》高热开播:收视率蹿升至第一、破腾讯视频记录
尼泊尔客机坠毁:机上72人不幸全部遇难
AMD显卡的尴尬!一个月了 两大品牌仍然没有RX 7900
世界新动态:中国首次全尺寸超导航行试验成功!时速50公里、冲击1000公里
全球信息:AJAX使用记录
环球热头条丨糖醋排骨里竟然藏着"量子点"!它咋这么厉害?
天天观天下!2个大厂 100亿级 超大流量 红包 架构方案
世界视点!CodeQL练习1
实时:day02-Spring基本介绍02
【天天速看料】Redis——数据类型
每日焦点!小朋友把山东的雪带回福建:半路化了 崩溃大哭
天天日报丨尼泊尔客机坠毁遇难人数升至68人:没有中国公民
环球快资讯:golang 为图片加水印
mysql--时间
环球焦点!王思聪打人后行政拘留为什么能暂缓执行?罗翔科普
天天观速讯丨AMD悄悄公布31个CPU漏洞:4个极危险、Zen4高枕无忧
今日热文:Nginx面试题(史上最全 + 持续更新)
当前快讯:Atcoder Regular Contest ARC 153 A B C D 题解
焦点关注:PhotoEnhancer人工智能一键修复老照片,老照片修复,图像去噪
男子花32万买比亚迪海豹 内心崩溃:汽配城都没这么难看
焦点要闻:节能版酷睿i9-13900T现身:35W战平12900K
观天下!腾讯开出48人惩治名单 马化腾曾称内部贪腐“触目惊心”
Phi的反函数
【环球热闻】110度高烧不退!AMD RX 7900 XTX退换货率高达11%
为啥北方二十三过小年 南方却是二十四?和康熙乾隆有关
观察:无广告一年免费用!通信UOS家庭版22.0开始推送
111111
男子买898元零食P图付款 被抓现行:实际支付了1分钱
天天通讯!基于传奇车型AE86!丰田推出两款新能源概念改装车
CF构造题1600-1800(2)
女子骑电动车载两人闯红灯被撞 被判全责 网友:这才是公正
苹果回应iPhone车祸监测误报频发:正收集相关反馈
《新·福音战士剧场版:终》国内海报抄袭!竹也文化官方布道歉声明
Python开发的常用组件
每日观察!推荐一本正在看的书
环球今热点:几十年数学难题被谷歌研究员意外突破 当年差点被导师赶出门
B站2022百大UP主出炉:手工耿入选 走向世界的手工匠人
天天亮点!稳居春节档票房前三:《流浪地球2》官方揭秘太空电梯创作思路
世界讯息:12月新能源销量排名出炉:比亚迪吉利长安强攻 特斯拉扛不住了?
【全球独家】读编程与类型系统笔记08_面向对象变成的元素
观速讯丨长征第462发!我国成功发射一箭14星:“共享”火箭了解下
国内《新·福音战士剧场版:终》限定海报被指抄袭 官方正在联系画师确认
无法恢复!微软杀软Defender误删开始菜单/任务栏捷方式
天天观点:排量830cc 马自达转子发动机正式回归!首车发布
天天亮点!雨雪降温重心转移至南方 大范围雨雪天气明日结束
天天短讯!一步一步实现若依框架--2.3防止重复提交 repeat_submit
焦点快播:2022一年 特斯拉车主为地球节省20亿美元油费
每日消息!全球首现!四川一地发现新物种:长得特别好看
每日动态!《三体》剧版今日CCTV8、腾讯视频全网首播:会员提前看三集
天天观点:使用ActiveMQ Artemis进行重连
环球热议:千万别在有WiFi的房间里摆这种姿势
焦点观察:微软收购动视暴雪更难了!NVIDIA出手阻挠
环球观焦点:联名中国第一科幻IP!荣耀80 Pro《三体》动画定制版来了:限量卖
【全球独家】淘汰所有老款!新一代PS5主机年内到来:不向下兼容
环球热门:无磷配方 低泡易漂 绿伞洗衣液6斤17.9元
每日焦点!碰撞测试能拿一星 创维是造了什么“神仙”车
全球播报:中国科幻顶级IP首登荧屏!《三体》电视剧今晚央视、腾讯视频首播
中国制造多牛?世界最先进工厂:我们占了近一半
今日热文:堪比抢iPhone 泰国车主凌晨排队买!比亚迪泰国发运破万台
世界快报:微信全新拜年红包上线!支持语音祝福录制 动画效果太萌了
当前头条:Python树与树算法
B站大会员促销:12个月年卡到手价98元
天天动态:污染环境?代表建议允许春节分区分时燃放烟花 留住年味
每日消息!吓哭孩子!《中国奇谭》导演回应家长炮轰被网友赞:要走出国门征服老外
吃惊!杭州湿度达到100% 墙壁、窗台“挤”出水:网友吐槽难受到爆
当前聚焦:Linux中查看日志的常用命令
环球聚焦:算法学习笔记(8.2): 上下界网络流
当前最新:直播:央视网络春晚 最美女主播王冰冰亮相:王心凌等也来了
动态焦点:屏幕最小的第二代骁龙8旗舰!曝三星Galaxy S23卖6500元
老款iPhone激活原生灵动岛!DynamicCow教程来了
python批量发邮箱
有了这份Java面试中的葵花宝典,让你面试起飞!!!
每日时讯!还买什么Zen3/Zen4 6核酷睿i5-12490F到手1139元(首发1499)
焦点速讯:公司年终奖老员工人手1个30克金牌 感谢忠诚引热议:网友问还招人吗?
世界微资讯!Codeforces Round #843 (Div. 2) A1A2BCE(D待补)
储量超100万吨 瑞典发现欧洲最大稀土矿床:有望结束进口依赖
环球即时:首发4999元 Bose家庭娱乐扬声器550发布:支持TrueSpace增强原音
苹果iOS 17新特性和新功能抢先看!今年6月登场
有家长炮轰《中国奇谭》 导演回应:审美提高了就理解了
世界速看:Codeforces 1630 E Making It Bipartite 题解 (Dilworth定理)
世界播报:使用 Elasticsearch 搭建自己的搜索系统,这个厉害了。。
理解宏定义
2023春节新片预售票房破3000万:黑马杀出 《流浪地球2》仅排第三
数字化“乡村小道”跑得不舒服,试试低代码“高速公路”
当前看点!一位民办二本学生的年终总结
今日看点:荣耀首款小折叠屏来了:5千档真香
世界信息:今晚8点播出 王冰冰、撒贝宁等人组团剧透央视网络春晚
3999元解决安卓四大不可能 一加11成酷安最热机型:领先第二名一倍
认识Java语言
读编程与类型系统笔记07_子类型
张朝阳称年轻人不要只追求赚钱和快乐:想法不对 你会很痛苦 本人风趣回应
当前热讯:网易开始解散暴雪游戏相关团队!分手已成定局
世界微头条丨特斯拉海外大降价 美国新车主:恶心、不愿再看一眼爱车
全球快消息!门票值了!大熊猫看到游客后展示“才艺”:抱着竹子连续翻跟头
省钱还是抠门?马斯克不交房租:员工在工作日被房东赶出
当前视点!Netty-核心模块组件-4
环球视点!微信将处理假冒仿冒官方组织公众号:严重违规直接删号
全体起立!马自达MX-30 R-EV官图发布:转子发动机回归