View的幾個座標的問題 ,涉及到動畫

event.getX():表示的是觸摸的點距離自身左邊界的距離 
event.getY():表示的是觸摸的點距離自身上邊界的距離
event.getRawX:表示的是觸摸點距離屏幕左邊界的距離
event.getRawY:表示的是觸摸點距離屏幕上邊界的距離 
View.getWidth():表示的是當前控件的寬度,即getRight()-getLeft()
View.getHeight():表示的是當前控件的高度,即getBottom()-getTop() 
View.getTop():子View的頂部到父View頂部的距離
View.getRight():子View的右邊界到父View的左邊界的距離 
View.getBottom():子View的底部到父View的頂部的距離 
View.getLeft():子View的左邊界到父View的左邊界的距離 
View.getTranslationX()計算的是該View在X軸的偏移量。初始值爲0,向左偏移值爲負,向右偏移值爲正。 
View.getTranslationY()計算的是該View在Y軸的偏移量。初始值爲0,向上偏移爲負,向下偏移爲證。

其中尤爲容易引發錯誤的是getLeft和getTranslationX.
前者是子View左邊界到父View左邊界的距離,而Translation則指的是水平方向的偏移量,這是一個動畫的屬性,表示View通過了移動,所通過的偏移量。兩者是大相徑庭的兩個概念。
下圖能夠解釋這種差距:

第二幅圖畫的不太好,實際上是實線右邊是新的View在的位置。多看幾遍相信就能理解了。本博客參考了 http://blog.csdn.net/zhuhai__yizhi/article/details/44725917 的圖片,在此感謝。
相關文章
相關標籤/搜索