ontouchEvent()滑动

1. 在手指滑动过程中,动态获取滑动距离和控件的left  top right bottom得到四个点的坐标 不断的 用onlayout( )方法去摆放控件的位置 实现滑动

xml里面就一个textview  跟正常的一样 下面是java代码

ontouchEvent()滑动_第1张图片


ontouchEvent()滑动_第2张图片


2. 通过scrollBy( ) 或者scrollTo( )去移动  这两种是对自己内容的移动  比如我这个viewgroup里面有个小球  其实就是让这个小球在我这个viewgroup里面移动  整个viewgroup是不动的

通过scrollby 不断的去滑动  scrollby是基于相对位置进行滑动 比如 scrollby(10,10);  第一次滑动的时候是基础初始坐标滑动x 10 y 10的距离  第二次就是基于第一次滑动之后的位置 再滑动...e  估计还是有人绕,这么说吧  看下图

ontouchEvent()滑动_第3张图片

scrollby滑到B点 就是基于A 滑动了 scrollBy(10,0);  //因为我们是横向滑动  y没变

滑到C点  就是基于B 滑动了 scrollBy(10,0);

滑到D点  就是基于C 滑动了 scrollBy(20,0);

我们就是通过这个原理,在手指拖拽的过程中  不断的让他scrollby来滑动 比如 我拖了1毫米 他就滑1毫米  我拖2毫米 他就滑2毫米  这样他是不是就一直跟着我手指在动了  是不是就这样实现了整个滑动过程

实现方式:自定义类继承 linearlayout  在xml中使用的时候  随便包含一个控件即可

ontouchEvent()滑动_第4张图片
ontouchEvent()滑动_第5张图片


ontouchEvent()滑动_第6张图片

你可能感兴趣的:(ontouchEvent()滑动)