view的位置主要由它的四個頂點來決定,分別對應於view的四個屬性:top、left、right、bottom。
需要注意的是,這些座標都是相對於view的父控制項來說的,因此它是一種相對座標。
上圖很清楚的展示了view的位置座標和父容器的關係,motionevent獲取位置與view提供的方法的關係
left=getleft();
top=gettop();
right=getright();
bottom=getbottom();
我們很容易得出view的寬和高和座標的關係:
width=getwidth()=getright()-getleft();
height=getheight()=getbottom()-gettop();
需要注意:從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這四個引數。
getx
()/gety
() 返回的是相對於當前view左上角的x和y座標
getrawx
()/getrawy
() 返回的是相對於手機螢幕左上角的x和y座標
View 的位置引數
view 的位置主要由它的四個頂點來決定,分別對應於view的四個屬性 top left right bottom,其中top是左上角縱座標,left是左上角橫座標,right是右下角橫座標,bottom是右下角縱座標。需要注意的是,這些座標都是相對於view的父容器來說的,因此它是一種相對座標,v...
View的事件體系之View的位置引數
如圖所示,為view的位置座標與父容器的關係圖,此圖 於老任的 android開發藝術探索 這本書,感興趣的同學可以去看下,以此我們來簡單介紹下view的位置引數的相關知識。首先是4個基本屬性top left right bottom 如圖,這幾個屬性,都是view相對于父容器的資訊 top 左上角...
Android開發 View的位置引數
view是android中所有控制項的基類,不管是簡單的button和textview,還是複雜的relativelayout和listview,其基類都是view類 viewgroup也繼承了view類,這意味著view本身就可以代表簡單的和複雜的所有控制項和布局,通過這種關係,就形成了view樹...