相关文章:
之前学习了View的测量和绘制,我们已经可以定制自己喜欢外观的View了
今天再来学习一下如何定制View的滑动效果。
View的滑动效果,本质上就是通过改变View的坐标来实现的。
关于Android 坐标系,之前我也写过文章特意讲了,我们再简单巩固一下。
坐标系分两种
一种是绝对坐标系,就是以手机屏幕左上角为原点。
View.getLocationOnScreen(int[] location) 还有 MotionEvent.getRawX()、MotionEvent.getRawY() 都是以这个坐标系为基准获取的坐标
我们称之为 绝对坐标
一种是视图坐标系,就是以父视图左上角为坐标原点
View.getLeft()等是以父布局为基准,
View.getLocationInWindow(int[] location)以父窗体为基准,
Canvas绘制和MotionEvent.getX()等是以当前View(父视图)为基准的
通常我们移动View,都和手指在屏幕上的触碰,拖动离不开关系
那么,如何捕捉到手指的触控呢?
这就要用到View的onTouchEvent(MotionEvent event)方法啦
public class MyView extends View{
public MyView(Context context) {
super(context);
// TODO Auto-generated constructor stub
}
@Override
public boolean onTouchEvent(MotionEvent event){
return true;