问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

如何获取recyclerview中子view的坐标

发布网友 发布时间:2022-05-01 18:11

我来回答

2个回答

热心网友 时间:2022-06-20 23:04

witch (action) {
case MotionEvent.ACTION_DOWN:
DownX = event.getX();//float DownX
DownY = event.getY();//float DownY
currentMS = System.currentTimeMillis();//long currentMS 获取系统时间
break;
case MotionEvent.ACTION_MOVE:
float moveX = event.getX() - DownX;//X轴距离
float moveY = event.getY() - DownY;//y轴距离
long moveTime = System.currentTimeMillis() - currentMS搜索;//移动时间
break;
case MotionEvent.ACTION_UP:
break;
}
http://zhidao.baidu.com/question/626979396736661764.html
以上来自百度,不明的话,看下面原理自己做个:
滑动其实只是不停的重绘图像,造成滑动的效果。
滑动其实是处理手的触屏事件,在你的View里有onTouch事件,里面会有
MotionEvent对象,里面保存当前手的位置坐标,你根据这个坐标计算手滑动的距离,
一般是在收到ACTION_DOWN时保存按下的位置,然后ACTION_MOVE会不停的上报,
计算得出滑动距离

热心网友 时间:2022-06-20 23:04

获取 RecyclerView 的滑动距离:
  滑动到一定程度后清零是因为 getChildAt(0) 获得的是第一个可见view 用LinearLayoutManager的recyclerview测试了一下确实如此。
  如果LayoutManager用的是LinearLayoutManager 可以用下面的办法,还能向下滑动多少 * * @return */ private int getDistance() { LinearLayoutManager layoutManager = (LinearLayoutManager) getLayoutManager(); View firstVisibleItem = this.getChildAt(0); int firstItemPosition = layoutManager.findFirstVisibleItemPosition(); int itemCount = layoutManager.getItemCount(); int recyclerviewHeight = this.getHeight(); int itemHeight = firstVisibleItem.getHeight(); int firstItemBottom = layoutManager.getDecoratedBottom(firstVisibleItem); return (itemCount - firstItemPosition - 1) * itemHeight - recyclerviewHeight + firstItemBottom; }
  已滑动的距离:
  private int getScrolledDistance() { LinearLayoutManager layoutManager = (LinearLayoutManager) getLayoutManager(); View firstVisibleItem = this.getChildAt(0); int firstItemPosition = layoutManager.findFirstVisibleItemPosition(); int itemHeight = firstVisibleItem.getHeight(); int firstItemBottom = layoutManager.getDecoratedBottom(firstVisibleItem); return (firstItemPosition + 1) * itemHeight - firstItemBottom; }
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
黄家驹是谁.拜托了各位 谢谢 最近这几天去 蓝调薰衣草庄园 还能赶上薰衣草盛开么 有没有去过的给点... 日本留学大学假期怎么放的 塑料水管怕水泥吗 孕妇腹壁脂肪厚怎么减 孕期肚子赘肉怎么减下去? 孕妇肚子怎么减肥啊 怀孕怎么减肚子上的肉 考研的难度相当于高考吗? 宏基5536笔记本15.6寸屏幕分辨率最高可以设到多少,我用HDMI线连液晶电视... 买新车是不是就不用验车了?别被坑了!先仔细检查之后再开走! Android开发中在view中怎么指定控件的位置 android textview怎么获取指定坐标的字符索引? 新车要年检吗 Android开发中在view中怎样指定控件的位置 皮卡堂怎么快点赚钱、 android VIew中画正弦曲线时怎样自己定义坐标轴,怎样将原点设置到屏幕中心 如何固定android中ImageView的位置 皮卡堂怎么又能快速升级又能快速挣钱 在对Android的View对象使用setRotation方法时,View默认的锚点是其中心位置,请问怎样改变View的锚点位置 Android layout(int ,int,int,int)四个参数是如何确定一个view的位置的? android坐标系坐标原点是在view上还是在画布上 新车是不是要年检啊? 安卓开发中如何修改绝对定位的view的位置 android view怎么设置位置 皮卡堂快速赚钱 android里面自定义view时使用的ondraw()函数坐标是屏幕的坐标吗 android HorizontalScrollView 左右移动之后,子控件view 坐标与移动前的坐标不变。 皮卡堂怎么快速赚钱?我朋友5月58级,我一年54级。。。 android view的滑动绝对坐标系为什么move结束要重置初始坐标 在android中如何改变控件的坐标?(例如一个button,我想让它向右移动20dp) 新车上牌前的验车,一定要去车管所吗?去车辆检测站验车行不行 新车每年需要去检车吗? 新车三年需要年检吗 新车要年检吗? 新车上临时牌照需要验车吗? 苹果7plus闪退如何修复 iphone7plus王者荣耀闪退? cpu-amd-e1-7010是多少位的? 忘记了小米账号怎样查询订单号 amd e1-7010和英特尔i3哪个好? 戴尔的笔记本电脑,AMD E1-7010的处理器,8g运行内存,的电脑大概在什么价位啊?这款机子如何呢? 苹果7plus闪退解决方法 梅菜扣肉放盐的问题 amd e1-7010和英特尔i3那个好 为什么我看梅菜扣肉的做法里都没提到放盐呢?肉也不需要放盐吗? AMD E1-7010 这个处理器引脚咋样,可以更换吗 amb e1 7010处理器能玩些大型游戏吗? 联想C2005 cpu为E1-7010,能升级吗,适合的升级方案是哪款 想问问大家戴尔笔记本电脑AMD E1-7010,内存6G,R2集显,15.6寸这款值多少