Android MotionEvent中getX()和getRawX()有甚么不同
在Android MotionEvent中,getX()和getRawX()方法都是获得触摸事件的X轴坐标的方法,但是它们的返回值有一些不同。
1. getX()方法返回的是相对当前View左上角的X轴坐标,即触摸点相对View的位置。这个值是经过View的边界修正的,当触摸点超越View的边界时,getX()方法返回的值会被限制在View的边界内。
2. getRawX()方法返回的是触摸点相对屏幕左上角的X轴坐标,即触摸点的绝对位置。这个值没有经过View的边界修正,即便触摸点超越View的边界,getRawX()方法返回的值也不会被限制在View的边界内。
因此,getX()方法适用于获得触摸点相对当前View的位置,而getRawX()方法适用于获得触摸点在全部屏幕上的绝对位置。根据具体的需求,我们可以选择使用其中的一个方法来获得触摸事件的X轴坐标。
TOP