Android自定义view目录
Android坐标系
Android view的摆放,宽高,绘制,都是需要位置的,而有位置就会有坐标系,有了坐标系我们就能将全部的view按照统一的坐标系来完成摆放,宽高,绘制等操作。
Android中的坐标系。
- Android坐标系。
- 视图view坐标系。
1. Android坐标系
Android坐标系以屏幕左上角为原点,向右为X轴正坐标。向下为Y轴正坐标。
2. 视图坐标系
视图坐标系为Android view相对于父控件的位置,坐标系原点为父控件左上角,x,y轴方向与Android坐标系相同。
如图:
控件属性的 getLeft, getTop等都是子控件相对于父控件的坐标,
其中控件的getX()、getY()方法也是相对于父控件的位置,
eg: getX的源码就是控件的mLeft加上之后的偏移量
public float getX() {
return mLeft + getTranslationX();
}
3. 触摸坐标
上面的途中可以看出,触摸的坐标有两个坐标系
- getX、getY这个是以被触摸控件的左上角为原点的视图坐标获取的触摸位置。
- getRawX、getRawY,这时以屏幕最上角为原点的Android坐标的触摸位置