-
View介绍
View在Android中是所有空间元素的父类,基本的控件ImageView,TextView和复杂的Layout都直接或间接的继承View,View表示屏幕上的一块可视化区域。
-
View在父容器中的位置和它自身的大小
View在父容器中的位置由它的顶点坐标(left,top,right,bottom)决定。View的宽高也由它的顶点坐标(left,top,right,bottom)决定。width=right-left;height=bottom-top;
-
MotionEvent介绍
MotionEvent是对手指触摸屏幕后产生的事件的一个封装后的API,它里面包含了触摸事件的类型,
触摸点的位置【此位置分为相对于View左上角的坐标和相对于手机屏幕左上角的坐标】
x=MotionEvent.getX();
y=MotionEvent.getY();
rawX=MotionEvent.getRawX();
rawY=MotionEvent.getRawY();
4.TouchSlop介绍
当手指在屏幕上滑动时,Android系统如何判断这次触屏行为是滑动呢?
Android系统认为当滑动距离d大于等于TouchSlop就认为这是滑动。
TouchSlop的大小和手机有关,获取它的方法:
touchSlop=ViewConfiguration.get(context).getScaledTouchSlop();
5.VelocityTracker介绍
VelocityTracker速度追踪,手指在屏幕上滑动时,用来获取水平和竖直方向上的速度
用法:
//初始化
VelocityTracker vt=VelocityTracker.obtain();
vt.addMovement(MotionEvent);
//计算速度
vt.computeCurrentVelocity(int time);
int xVelocity=vt.getXVelocity();
int yVelocity=vt.getYVelocity();
//回收
vt.clear();
vt.recycle()