Android獲取螢幕和控制元件座標
涉及到的方法一共有下面幾個:
view獲取自身座標:getLeft(),getTop(),getRight(),getBottom()
view獲取自身寬高:getHeight(),getWidth()
motionEvent獲取座標:getX(),getY(),getRawX(),getRawY()
首先是view的幾個方法,
獲取自身的寬高的這兩個方法很清楚,不用多說,獲取座標的這幾個就有點混亂了。
根據上面的圖應該會比較容易明白,圖中螢幕上放了一個ViewGroup佈局,裡面有個View控制元件
getTop:獲取到的,是view自身的頂邊到其父佈局頂邊的距離
getLeft:獲取到的,是view自身的左邊到其父佈局左邊的距離
getRight:獲取到的,是view自身的右邊到其父佈局左邊的距離
getBottom:獲取到的,是view自身的底邊到其父佈局頂邊的距離
然後是motionEvent的方法:
getX():獲取點選事件相對控制元件左邊的x軸座標,即點選事件距離控制元件左邊的距離
getY():獲取點選事件相對控制元件頂邊的y軸座標,即點選事件距離控制元件頂邊的距離
getRawX():獲取點選事件相對整個螢幕左邊的x軸座標,即點選事件距離整個螢幕左邊的距離
getRawY():獲取點選事件相對整個螢幕頂邊的y軸座標,即點選事件距離整個螢幕頂邊的距離
這些方法可以用在什麼地方呢?
getRawX和getRawY在之前那篇部落格裡廣泛使用了,可以去那裡看用法,getX()和getY()這兩個方法在對view進行自定義的時候可能用的會比較多。
相關文章
- android通過MediaProjection獲取螢幕內容AndroidProject
- 物體物件在螢幕中的座標及滑鼠座標物件
- 3d基礎 - 從模型座標到螢幕座標3D模型
- 短視訊平臺原始碼,Android獲取螢幕的高度和寬度原始碼Android
- 使用js獲取滑鼠座標JS
- 觸控事件獲取座標事件
- JS,Jquery獲取各種螢幕的寬度和高度JSjQuery
- JavaScript獲取元素在文件中座標JavaScript
- JavaScript獲取滑鼠在文件中座標JavaScript
- JavaScript-滑鼠獲取頁面座標JavaScript
- 獲取各種螢幕高度寬度(工作)
- Android三種方式擷取任意介面螢幕Android
- Android日常學習:如何高效 & 正確地獲取View的座標位置?AndroidView
- Android -- 工具類(七):[ScreenUtil] (截圖,獲取螢幕寬高,顯示、隱藏虛擬鍵盤,調節螢幕亮度)Android
- JavaScript 獲取div在頁面中座標JavaScript
- JavaScript獲取滑鼠在元素中的座標JavaScript
- Flutter 中獲取螢幕以及 Widget 的寬高Flutter
- Android螢幕適配總結和思考Android
- android 螢幕適配Android
- android 喚醒螢幕Android
- android獲取控制元件的幾種方法Android控制元件
- WIN32API:獲取螢幕的解析度Win32API
- 百度地圖:根據位置獲取座標地圖
- Java 獲取Excel分頁座標位置(單元格)JavaExcel
- Android螢幕適配方案Android
- Android 禁止螢幕旋轉Android
- android螢幕適配方法Android
- Android 螢幕自適應Android
- 小程式獲取當前元素在螢幕中的位置
- JavaScript獲取瀏覽器、元素、螢幕的寬高尺寸JavaScript瀏覽器
- C#獲取Windows10螢幕的縮放比例C#Windows
- Flutter使用ScreenUtil獲取螢幕寬高初始化報錯Flutter
- Android 主流螢幕以及適配Android
- Android螢幕適配方案分析Android
- flutter 總結: 通過 GlobalKey 獲取介面任意元素座標尺寸Flutter
- Java 獲取Excel中圖片所在的行、列座標位置JavaExcel
- js劃詞翻譯、螢幕取詞,取詞位置獲取(真正解決定位問題)JS
- Java及Jquery獲取螢幕解析度的實現程式碼JavajQuery
- android自定義View——座標系AndroidView