安卓开发监听recyclerview的滑动时某一控件距离顶部的距离来做显示隐藏某些布局
来源:互联网 发布:淘宝上买的司考视频 编辑:程序博客网 时间:2024/05/10 23:46
有两种方法!大家可以根据自己的情况做!下面说下步骤!
1、首先添加recyclerview的监听来
recyclerview.addOnScrollListener(new RecyclerView.OnScrollListener() { @Override public void onScrolled(RecyclerView recyclerView, int dx, int dy) { //dosomething } });
2、在onScrolled方法里面添加所做的操作!以LinearLayoutManager为例!
LinearLayoutManager linearLayoutManager = new LinearLayoutManager(mContext, LinearLayoutManager.VERTICAL, false);//创建布局管理者recyclerview.addOnScrollListener(new RecyclerView.OnScrollListener() { @Override public void onScrolled(RecyclerView recyclerView, int dx, int dy) { //在此做处理 if (null != linearLayoutManager) { //当前条目索引 int position = gridLayoutManager.findFirstVisibleItemPosition(); ****方法1:根据索引来做显示隐藏判断**** //根据当前条目索引做判断处理。例如:如果在索引是0, 隐藏显示某个布局,索引大于0显示出来 if (position > 0) { //做显示布局操作 view.setVisibility(View.VISIBLE); } else { //做隐藏布局操作 view.setVisibility(View.GONE); } ****方法2:根据view的高度来做显示隐藏判断 **** //根据索引来获取对应的itemView View firstVisiableChildView = linearLayoutManager .findViewByPosition(position); //获取当前显示条目的高度 int itemHeight = firstVisiableChildView.getHeight(); //获取当前Recyclerview 偏移量 int flag = (position) * itemHeight - firstVisiableChildView.getTop(); if (flag >= itemHeight) { //做显示布局操作 view.setVisibility(View.VISIBLE); } else { //做隐藏布局操作 view.setVisibility(View.GONE); } } } });
补充提示(有些操作可以根据第一个item的view或最后一个item的view距离顶部或者底部的距离来做处理)
View view = gridLayoutManager.findViewByPosition(0);//gridLayoutManager布局管理器 if(null!=view){ view.getBottom(); }
注释都写了!哈哈哈!希望对大家有帮助!有问题可加Q询问!
463263900
阅读全文
1 0
- 安卓开发监听recyclerview的滑动时某一控件距离顶部的距离来做显示隐藏某些布局
- 获取RecyclerView滑动的距离
- 关于RecyclerView与ListView控件滑动距离的计算方法
- 动态改变布局到顶部的距离
- 如何获取Android RecyclerView滑动的距离
- 如何获取Android RecyclerView滑动的距离
- 如何获取Android RecyclerView滑动的距离
- 关于控件滑动至顶部的监听
- 计算ScrollView控件的滑动距离
- Android 开发笔记: 获取RecyclerView 滑动距离
- ScrollWebView的滑动距离显示内容
- RecyclerView滑动距离计算
- js获取可视化区域的宽和高以及滑动条距离顶部的距离
- Scrollview的滑动距离
- 设置滑动的距离
- ListView监听滑动距离
- 安卓设置某个按钮与顶部的距离是屏幕高度的八分之一
- shell script 显示距离(向前)某一天的时间
- 使用table标签制作常用的html表格
- Java通过jdbc连接MySQL
- archetypeCatalog解决indea创建maven项目慢
- 排序:起泡排序法
- xml文件去掉所有标签只保留内容部分
- 安卓开发监听recyclerview的滑动时某一控件距离顶部的距离来做显示隐藏某些布局
- 程序员如何打造属于自己的云笔记服务
- 关于使用Mybatis逆向工程针对Oracle数据库表生成代码需要注意的问题
- Kotlin的扩展属性和扩展方法
- 如何利用人工神经网络加速自然历史科学的发展?
- 中国人工智能如何走向全世界?依图全球化战略揭秘
- jdbc编程操作数据库(mysql为例)
- 当美国民众将AI和工作自动化画上等号
- 改写jtopo滚轮缩放代码