Android-CoordinateSystem
主要讲述关于View中坐标系系统~
可视区域:如果view,上半显示,下半超出屏幕不显示,那么可视区域是上半,而不是整个;
View中方法
| 方法 | 坐标系 | 含义 | 
|---|---|---|
| getX/Y | parent | mLeft/mTop + getTranslationX/Y() | 
| getWidth,getHeight | 自己 | 获取宽高 | 
| getLeft,getTop,getRight,getBottom | parent | view到parent某一方向的距离 | 
| getLocalVisibleRect | 自己 | 可视区域 | 
| getGlobalVisibleRect | srceen | 可视区域 | 
| getDrawingRect | 自己 | 自身滚动后的Rect | 
| getHitRect | parent | 相当于getLeft/Top等值放入Rect | 
| getLocationOnScreen | srceen | 获取左上角的点在srceen的位置 | 
| getLocationInWindow | window(Activity为Dialog的时候和 screen不一样大) | 获取左上角的点在window的位置 | 
| getWindowVisibleDisplayFrame | screen | 获取到程序显示的区域,包括标题栏,但不包括状态栏。 | 
Event中方法
| 方法 | 坐标系 | 含义 | 
|---|---|---|
| getX/Y | 自己 | |
| getRawX/Y | Srceen | 
View的滑动方法
坐标系均为 自己
| View的滑动方法 | 效果及描述 | 
|---|---|
| offsetLeftAndRight/offsetTopAndBottom(int offset) | 水平/竖直方向挪动View,getLeft()/getTop会变的. 注意:requestLayout后一些值丢失 | 
| scrollTo(int x, int y) | 将View中内容滑动到相应的位置,x,y为正则向xy轴反方向移动。 | 
| scrollBy(int x, int y) | 在scrollTo()的基础上继续滑动xy。 | 
| setScrollX/setScrollY(int value) | 实质为scrollTo(),只是只改变X/Y轴滑动。 | 
| getScrollX()/getScrollY() | 获取当前滑动位置偏移量。 | 
原文作者: Zone
原文链接: https://luhaoaimama1.github.io/2016/11/05/CoordinateSystem/
许可协议: 知识共享署名-非商业性使用 4.0 国际许可协议