1.getLeft()、getTop()、getRight()、getBottom()
获得 View 相对 父View 的坐标
view.apply {
left
top
right
bottom
}
2.getX()、getY()、getRawX()、getRawY()
获得点击事件处 相对点击控件 & 屏幕的坐标
event.x
event.y
event.rawX
event.rawY
3.getLocationInWindow()
获取控件 相对 窗口Window 的位置
val location = IntArray(2)
view.getLocationInWindow(location)
var x = location[0]
var y = location[1]
4.getLocationOnScreen
获得 View 相对 屏幕 的绝对坐标
val location = IntArray(2)
view.getLocationOnScreen(location)
var x = location[0]
var y = location[1]
5. getGlobalVisibleRect
View可见部分 相对于 屏幕的坐标
val globalRect = Rect()
view.getGlobalVisibleRect(globalRect)
globalRect.apply {
left
top
right
bottom
}
6.getLocalVisibleRect
View可见部分 相对于 自身View位置左上角的坐标
val globalRect = Rect()
view.getLocalVisibleRect(globalRect)
globalRect.apply {
left
top
right
bottom
}