Android 获得控件在屏幕中的坐标 - 总结

Posted Rison13

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android 获得控件在屏幕中的坐标 - 总结相关的知识,希望对你有一定的参考价值。

android坐标原点为左上角,如果是某个View,那么就以该矩阵的左上角为原点

1、绝对坐标 Location

int[] location = new  int[2] ;
view.getLocationInWindow(location); //获取在当前窗口内的绝对坐标,含toolBar
view.getLocationOnScreen(location); //获取在整个屏幕内的绝对坐标,含statusBar
// location [0]--->x坐标,location [1]--->y坐标
// 需要在UI控件都加载完成才能正确获取。例如在onWindowFocusChanged(boolean hasFocus)回调中获取。

2、通过LayoutParams 获取位置,需要注意的是,params.y是在窗口内的绝对坐标,不含statusBar

WindowManager.LayoutParams lp = getWindow().getAttributes();
lp.x= x;
lp.y= y;

3、获取相对在它父亲里的坐标

  View.getLeft(), getTop(), getBottom(), getRight()

4、获取屏幕高度、标题高度、状态栏高度详解

5、点击坐标比较详细的文章

以上是关于Android 获得控件在屏幕中的坐标 - 总结的主要内容,如果未能解决你的问题,请参考以下文章

Android得到控件在屏幕中的坐标

图解Android View的scrollTo(),scrollBy(),getScrollX(), getScrollY()

获得控件的屏幕坐标

图解Android View的scrollTo(),scrollBy(),getScrollX(), getScrollY()

图解Android View的scrollTo(),scrollBy(),getScrollX(), getScrollY()

c#window窗体应用程序中一个控件,如果鼠标点击控件,怎么获得此时鼠标点击处的屏幕坐标