先看这段源码介绍:

/*** Called when a view created by this adapter has been detached from its window.** <p>Becoming detached from the window is not necessarily a permanent condition;* the consumer of an Adapter's views may choose to cache views offscreen while they* are not visible, attaching an detaching them as appropriate.</p>** @param holder Holder of the view being detached*/public void onViewDetachedFromWindow(VH holder) {}

Called when a view created by this adapter has been detached from its window.
(当适配器创建的view(即列表项view)被窗口分离(即滑动离开了当前窗口界面)就会被调用)

这个方法就是用来当你的列表项滑出可见窗口之外的时候,需要重写此方法进行相应的一些操作。

-----------------------------------------------------------------------------------------------------------------

这个方法具体什么时候用呢?

比如:

我有一个列表,列表的每一个列表项里面都要播放一个短视频,这时候,当我滑动一个列表项直至它消失在可视界面时,便会调用onViewDetachedFromWindow()方法,重要的一点,视频控件也会执行它自己的onViewDetachedFromWindow()方法,那么此时我再滑动回来,让该列表项出现在当前界面,会发现视频那一部分就是黑屏或者白屏了。

注意,出现这个Bug的条件是,该列表项滑动出可视界面,但是滑动距离不长,因为长的话,你再滑回来就会复用View执行onBindViewHolder()方法。

解决方法就是在RecyclerView中重写onViewDetachedFromWindow()方法,对视频进行一个相应的操作(初始化等等)。

-----------------------------------------------------------------------------------------------------------------

对应方法:onViewAttachedToWindow()

当列表项出现到可视界面的时候调用

/*** Called when a view created by this adapter has been attached to a window.** <p>This can be used as a reasonable signal that the view is about to be seen* by the user. If the adapter previously freed any resources in* {@link #onViewDetachedFromWindow(RecyclerView.ViewHolder) onViewDetachedFromWindow}* those resources should be restored here.</p>** @param holder Holder of the view being attached*/public void onViewAttachedToWindow(VH holder) {}

RecyclerView解析--onViewDetachedFromWindow()/onViewAttachedToWindow()相关推荐

  1. android流程化步骤样式,Android RecyclerView 解析之绘制流程篇

    前言: 当前市场上有很多成熟的RecyclerView分析文章,但那始终是其他人总结出来的,还得自己动手分析,才知道自己理解了有多少,当然这个也算是加深对RecyclerView对理解吧: 官方简介: ...

  2. ListView和RecyclerView的Adapter封装

    原文链接 Android 快速开发系列 打造万能的ListView GridView 适配器 为RecyclerView打造通用Adapter 让RecyclerView更加好用 Android 优雅 ...

  3. Android UI RecyclerView讲解

    前言 RecyclerView是Android 5.0之后推出的列表类控件,具有高度的解耦性和灵活性.通过使用合适的LayoutManager,可以实现ListView.横向ListView.Grid ...

  4. Kotlin实战案例:实现RecyclerView分页查询功能(仿照主流电商APP,可切换列表)

    n实战案例:带你实现RecyclerView分页查询功能(仿照主流电商APP,可切换列表和网格效果) 随着Kotlin的推广,一些国内公司的安卓项目开发,已经从Java完全切成Kotlin了.虽然Ko ...

  5. 自定义控件:下拉刷新

    PullToRefresh 下拉刷新 上拉加载 掌握自定义的具有下拉刷新和上拉加载功能的 ListView 掌握自定义的侧边栏 SlidingMenu 在日常开发工作中,应用界面常常都是用ListVi ...

  6. 【FastDev4Android框架开发】RecyclerView完全解析之下拉刷新与上拉加载SwipeRefreshLayout(三十一)...

    转载请标明出处: http://blog.csdn.net/developer_jiangqq/article/details/49992269 本文出自:[江清清的博客] (一).前言: [好消息] ...

  7. 云炬Android开发笔记 10主界面-首页UI与数据解析器开发(RecyclerView)

    阅读目录 1.创建首页UI 1.1 检查依赖是否存在 1.2 布局 1.3 控件查找 2.首页下拉刷新实现 2.1[初始化] 2.2 封装刷新功能 2.3 加载数据的处理 3. 首页数据结构分析 3. ...

  8. Android 系统(188)---Android开发:ListView、AdapterView、RecyclerView全面解析

    Android开发:ListView.AdapterView.RecyclerView全面解析 目录 ListView.AdapterView.RecyclerView全面解析.png Adapter ...

  9. RecyclerView完全解析,让你从此爱上它(二十八)

    RecyclerView完全解析,让你从此爱上它(二十八) 2015-11-20      0 个评论   来源: 专注移动开发,项目管理.jiangqqlmj   收藏   我要投稿 (一).前言: ...

最新文章

  1. SQL Server 备份与恢复之四:备份类型和选项
  2. 高并发编程-Thread#interrupt用法及源码分析
  3. 转 C# 串口编程遇到的问题以及解决方法
  4. 【LeetCode】191. Number of 1 Bits
  5. 利用fiddler将本地网页放到某个域下
  6. java写一个web聊天工具_javaweb写的在线聊天应用
  7. [设计模式] ------ 策略模式实战:java中替代if-else的大段逻辑
  8. PKU 学生反馈 2009 - 4
  9. 得到的 飞鸽 传书结果就是int * pointer;
  10. 解决 sublime text3 运行python文件无法input的问题
  11. 我也不知道取什么标题好了!
  12. python贪心算法几个经典例子_贪心算法经典例子
  13. 【c语言】两个栈实现一个队列
  14. 21天学习挑战赛——Python 操作Excel(xlrd和xlwt)
  15. IT项目管理 第七章 保证项目质量
  16. 计算机的扩展模式,Win7双屏复制/双屏扩展设置教程
  17. 字符串转成可计算的数学表达式
  18. 用AI画一只漂亮的羽毛
  19. html添加视频背景
  20. 测试pok_如何将PokémonGo App用于Apple Watch

热门文章

  1. python读取txt文件-python txt文件的写入和读取
  2. python中文昵称-python3随机生成中文字符(随机生成两字或三字的名字)
  3. 学python最好的方式-Python 学习怎样开始比较好?
  4. 关于深度学习中GPU显存使用的介绍
  5. mybatis-plus AutoGenerator
  6. spring如何解决循环依赖
  7. hdu1.3.8 As Easy As A+B
  8. Win8总提示安装FLASH插件怎么办?
  9. Python网络爬虫与信息提取(一)(入门篇)
  10. nginxtomca负载均衡