安卓自定义View之坐标系区分

1. 坐标系基础

直接上图,更加通俗易懂


数学坐标系.jpg
安卓坐标系.jpg

如角度从右下角开始

安卓屏幕坐标系.jpg
2. View的坐标系

注意:View的坐标系统是相对于父控件而言的

getTop();       //获取子View左上角距父View顶部的距离
getLeft();      //获取子View左上角距父View左侧的距离
getBottom();    //获取子View右下角距父View顶部的距离
getRight();     //获取子View右下角距父View左侧的距离
View坐标系.jpg
3. MotionEvent中 get 和 getRaw 的区别
event.getX();       //触摸点相对于其所在组件坐标系的坐标
event.getY();

event.getRawX();    //触摸点相对于屏幕默认坐标系的坐标
event.getRawY();
MotionEvent坐标系.jpg
4. view的getTranslationX和getTranslationY

View.getTranslationX()计算的是该View在X轴的偏移量。初始值为0,向左偏移值为负,向右偏移值为正。
View.getTranslationY()计算的是该View在Y轴的偏移量。初始值为0,向上偏移为负,向下偏移为证。

你可能感兴趣的:(安卓自定义View之坐标系区分)