Android RecycleView 的findChildViewUnder()方法,十分方便返回指定位置的childView
来源:互联网 发布:名不虚传软件官网 编辑:程序博客网 时间:2024/06/01 08:12
版权声明:本文为博主原创文章,未经博主允许不得转载。
观察到现在很多列表视图和网格视图需要返回指定位置下的view,例如小米手机的相册功能,滑动到不同的日期的图片,提示框出现的日期也随之变化。在listview和gridview中,估计需要自己写方法来获取,但强大的RecycleView提供了一个非常便利的findChildViewUnder(float x ,float y)来给开发者带来方便
查看了一下此方法的源代码,非常简单:
这个ChildHelper类,它会协助获取RecyclerView中的childVIew,并提供忽略隐藏Children的功能,也就是说,调它的getChildAt只会在当前显示的Children中去查找,如果想查HiddenChildren,需要调getUnfilteredChildAt。
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
写一个很简单的测试程序来测试一下该方法:
其中布局文件中加一个自定义的DrawView来标定位置:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
DrawView的onDraw代码:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
MainActivity的代码如下
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
测试结果如下:
02-05 15:50:59.815 4486-4486/com.example.yuanh.surfacetest V/scroll: child:Danny
02-05 15:50:59.832 4486-4486/com.example.yuanh.surfacetest V/scroll: child:Danny
02-05 15:50:59.850 4486-4486/com.example.yuanh.surfacetest V/scroll: child:HTC Sammi
02-05 15:50:59.865 4486-4486/com.example.yuanh.surfacetest V/scroll: child:HTC Sammi
02-05 15:51:03.646 4486-4486/com.example.yuanh.surfacetest V/scroll: child:ne
02-05 15:51:03.679 4486-4486/com.example.yuanh.surfacetest V/scroll: child:ne
测试成功,非常好用的一个方法
- Android RecycleView 的findChildViewUnder()方法,十分方便返回指定位置的childView
- Android RecycleView 的findChildViewUnder()方法,十分方便返回指定位置的childView
- Android 十分方便的EasyRecyclerView
- 28.Android 十分方便的EasyRecyclerView
- 22.Android 十分方便的滑动标签页EasySlidingTabs
- 返回指定位置的字符串
- 返回指定位置的字符
- JS之返回指定位置字符的charAt方法
- 十分简单方便的二维码工具
- 【Javascript】返回指定位置的字符
- recycleView的条目长按换位置
- Android RecyclerView:设置指定位置的两种方法
- 一个移植十分方便的malloc函数族的实现
- RecycleView的方法
- 不用一个一个分区的整理磁盘,十分快捷方便。
- 一个移植十分方便的类似printf函数
- 一个移植十分方便的类似printf函数,升级版
- Android RecycleView的使用
- 国外黑客们的入侵网站思路
- 00python正则表达式的搜索和匹配
- 一、JavaScript的实现
- 高级控件1
- 繁杂版本跟进遇到的问题及部分处理方式
- Android RecycleView 的findChildViewUnder()方法,十分方便返回指定位置的childView
- BZOJ2013 [Ceoi2010]A huge tower 乱搞
- 使用Jenkins配置自动化构建
- 队列--杨辉三角
- unzip命令解压zip文件中文乱码
- 点数组平滑插值
- 6.8-6.11
- 根据/proc/partitions获取插入的U盘设备名称
- FUNDAMENTAL Unit01 JAVA开发环境