1.View与ViewGroup
View是Android所有控件的基类,平时用到的textView与ImageView等都是继承View的.而我们平常用的LinearLayout是继承ViewGroup,ViewGroup可以理解为View的组合,它可以包含多个View以及ViewGroup,形成一个树.
2.坐标系
Android系统中有两种坐标系,分别是Android坐标系与View坐标系.
Android坐标系
将屏幕左上角的顶点作为Android坐标系的原点,这个原点向右是X轴正方向,向下是Y轴正方向;另外,在触控事件中,使用getRawX(),getRawY()方法获取到的坐标也是Android坐标系的坐标.
View坐标系
由上图我们可以得到:view的宽高
width = getRight() - getLeft();//和getWidth()一样
height= getBottom() - getTop();//和getHeight()一样
3.MotionEvent
上图中的红点,即我们触摸的点,无论是view还是viewGroup,最终的点击事件都是由onTouchEvent(MotionEvent event)方法来处理.
MotionEvent里面提供了很多的事件常量,例如:
ACTION_DOWN
ACTION_UP
ACTION_MOVE