1. 程式人生 > >Android之座標系以及獲取座標系的方法

Android之座標系以及獲取座標系的方法

概括:Android中有兩種座標系(Android座標系檢視座標系)。下面將介紹這兩種座標系以及在座標系中獲取對應的座標值的一些方法。

Android座標系和檢視座標系

1)Android座標系

所謂的Android座標系就是以手機螢幕左上角為原點,從該點水平向右為X軸,從該點水平向下為Y軸。如果是在觸控事件中,獲取座標值的方法為getRawX()getRawY()

示例圖如下:

         

 

2)檢視座標系

具體來說就是字檢視在父檢視中的位置(以父檢視的左上角為相對座標原點)

    

 

獲取座標值以及相對距離的一些方法

在Android中提供了很多的方法來獲取座標值和相對距離。但是在使用這些方法的時候,一定要清楚是以哪些座標系為標準獲取的。

如下圖所示:

        

說明:最外層是手機螢幕,中間層是ViewGroup,最內層是ViewGroup中放置的View。

上圖中的方法可以分為兩類:View提供的方法和MotionEvent提供的方法

View提供的方法:

  • getTop()   獲得View自身的頂邊到父佈局頂邊的距離
  • getLeft()    獲得View自身的左邊到父佈局左邊的距離、
  • getBottom()   獲得View自身的底邊到父佈局頂邊的距離
  • getRight()   獲得View自身的右邊到父佈局左邊的距離

MotionEvent提供的方法:

  • getX()   獲得點選事件距離控制元件左邊的距離,即檢視座標
  • getY()    獲得點選事件距離控制元件頂邊的距離,即檢視座標
  • getRawX()    獲得點選事件距離整個螢幕左邊的距離,即絕對座標
  • getRawY()    獲得點選事件距離整個螢幕頂邊的距離,即絕對座標