View 的位置參數

View 的位置主要由它的四個頂點來決定,分別對應於View的四個屬性: top .  left . right . bottom,其中top是左上角縱座標,left是左上角橫座標,right是右下角橫座標,bottom是右下角縱座標。需要注意的是,這些座標都是相對於View的父容器來說的,因此它是一種相對座標,View的座標和父容器的關係如下圖所示:在Android中,X軸和Y軸的正方向分別爲右和下,這點不難解,不僅僅是Android,大部分顯示系統都是按照這個標準來定義座標系的

根據如下圖:

根據圖我們很容易得出View的寬高和座標的關係:

width =right - left;

height=bottom -top;

那麼如何得到View的這四個參數呢?也很間,在View的源碼中它們對應於mLeft ,mRight ,mTop ,mBottom這四個成員變量,獲取方式如下:

>  Left = getLeft();

> Right=getRight();

> Top =getTop();

>Bottom = getBottom();


從Android3.0開始,View增加了額外的幾個參數; x , y, translationX和 translationY,其中 x 和 y 是View左上角的座標,而 translationX translationY是View左上角相對於父容器的偏移量。這幾個參數也是相對於父容器的座標,並且

translationX translationY的默認值是0,和View的四個基本的位置參數一樣,View也爲它們提供了get//set方法

幾個參數的換算關係如下所示:

     x =left + translationX;

     y =top + translationY;


需要注意的是,View在平移的過程中,top 和 left 表示的是原始左上角的位置信息,其值並不會發生變化,此時發生改變的是 x  , y ,translationX , translationY 這四個參數。








發佈了23 篇原創文章 · 獲贊 89 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章