1. 在手指滑动过程中,动态获取滑动距离和控件的left top right bottom得到四个点的坐标 不断的 用onlayout( )方法去摆放控件的位置 实现滑动
xml里面就一个textview 跟正常的一样 下面是java代码
2. 通过scrollBy( ) 或者scrollTo( )去移动 这两种是对自己内容的移动 比如我这个viewgroup里面有个小球 其实就是让这个小球在我这个viewgroup里面移动 整个viewgroup是不动的
通过scrollby 不断的去滑动 scrollby是基于相对位置进行滑动 比如 scrollby(10,10); 第一次滑动的时候是基础初始坐标滑动x 10 y 10的距离 第二次就是基于第一次滑动之后的位置 再滑动...e 估计还是有人绕,这么说吧 看下图
scrollby滑到B点 就是基于A 滑动了 scrollBy(10,0); //因为我们是横向滑动 y没变
滑到C点 就是基于B 滑动了 scrollBy(10,0);
滑到D点 就是基于C 滑动了 scrollBy(20,0);
我们就是通过这个原理,在手指拖拽的过程中 不断的让他scrollby来滑动 比如 我拖了1毫米 他就滑1毫米 我拖2毫米 他就滑2毫米 这样他是不是就一直跟着我手指在动了 是不是就这样实现了整个滑动过程
实现方式:自定义类继承 linearlayout 在xml中使用的时候 随便包含一个控件即可
网友评论