getRawX(),getRawY(),getX(),getY(),getScrollX(),getScrollY()区别

1、MotionEvent 中的getRawX(),getRawY(),getX(),getY()

getRawX(),getRawY():触摸点相对于屏幕的位置 (像素);

getX(),getY():触摸点相对于父View的位置(像素);




2、View中的getScrollX(),getScrollY()

getScrollX()与getScrollY()的值由调用View的scrollTo(int x, int y)或者scrollBy(int x, int y)产生

其中scrollTo是将View中的内容移动到指定的坐标x、y处,此x、y是相对于View的左上角,而不是屏幕的左上角

scrollBy(int x, int y)则是改变View中的相对位置,参数x、y为距离上一次的相对位置。

x > 0,从右向左滑动,反之从左向右滑动;y > 0,从下向上滑动,反之从上向下滑动;




getScrollX(): 滑动后的位置相对于原始位置横向偏移量,向左滑动 getScrollX() > 0,反之小于0;

getScrollY():滑动后的位置相对于原始位置纵向偏移量,向上滑动getScrollY() > 0,反之小于0;

上图为Button的内容滑动偏移量;


你可能感兴趣的:(android)