Android View體系(一)視圖座標系

來源:互聯網
上載者:User

Android View體系(一)視圖座標系
前言

Android View體系是介面編程的核心,他的重要性不亞於Android四大組件,在這個系列中我會陸續講到View座標系、View的滑動、View的事件分發等文章來逐步介紹Android View體系。

1.View簡介

View是Android所有控制項的基類,同時ViewGroup也是繼承自View,看下面這張圖我們就會有一個直觀的瞭解:
vc7Sw8ezo9PDtcTV4tCpv9i8/ra8yse8zLPQ09pWaWV3o6zI57n7ztLDx7j8usO1xNXGztXBy1ZpZXe1xNaqyrbM5c+1o6zEx8O0ztLDx9TavefD5rHgs8zKsdTyu+G4/LzTtcS1w9DE06bK1qGjPC9wPg0KPGgzIGlkPQ=="2android座標系">2.Android座標系

Android中有兩種座標系,分別為Android座標系和視圖座標系,首先我們先來看看Android座標系。
在Android中,將螢幕的左上方的頂點作為Android座標系的原點,這個原點向右是X軸正方向,原點向下是Y軸正方向。

在下文講到的MotionEvent提供的getRawX()和getRawY()擷取的座標都是Android座標系的座標。

3.視圖座標系

要瞭解視圖座標系我們只需要看懂一張圖就可以了:

View擷取自身寬高getHeight():擷取View自身高度 getWidth():擷取View自身寬度 View自身座標

通過如下方法可以獲得View到其父控制項(ViewGroup)的距離:

getTop():擷取View自身頂邊到其父布局頂邊的距離 getLeft():擷取View自身左邊到其父布局左邊的距離 getRight():擷取View自身右邊到其父布局左邊的距離 getBottom():擷取View自身底邊到其父布局頂邊的距離 MotionEvent提供的方法

我們看那個深藍色的點,假設就是我們觸摸的點,我們知道無論是View還是ViewGroup,最終的點擊事件都會由onTouchEvent(MotionEvent event)方法來處理,MotionEvent也提供了各種擷取焦點座標的方法:

getX():擷取點擊事件距離控制項左邊的距離,即視圖座標 getY():擷取點擊事件距離控制項頂邊的距離,即視圖座標 getRawX():擷取點擊事件距離整個螢幕左邊距離,即絕對座標 getRawY():擷取點擊事件距離整個螢幕頂邊的的距離,即絕對座標

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.