View中有很多方法,getTop,getLeft,getX,getScrollX,getY,getScaleX,getTranslationX等等。它们获取的到底是什么意思呢?
Android坐标系
在Android坐标中,左上角原点,水平向右为X轴,竖直向下为Y轴,垂直屏幕向上是Z轴。不管横屏还是竖屏均是此逻辑。
View的位置信息
ViewA移动到ViewA’后的位置关系,如下图:
View中的位置信息有两点很重要:
-
位置信息是相对于父布局
-
获取的位置信息均是像素
View的基本信息:
- getTop View自身顶部据父布局的顶部的距离
- getBottom View自身底部据父布局的顶部的距离
- getLeft View自身左侧据父布局的左侧的距离
- getRight View自身右侧据父布局的左侧的距离
这些信息不会随着移动,缩放等操作变化。
View的移动相关的信息
- getTranslationX View的X轴方向的移动距离
- getTranslationY View的Y轴方向的移动距离
- getX 当前可见的View的左侧据父布局的左侧的距离 getX = getLeft + getTranslationX
- getY当前可见的V