基本概念:
Android坐标系:以屏幕左上角为坐标原点,向右为x的正轴,向下为y的正轴。
视图坐标系:以父视图的左上角为坐标原点,向右为x的正轴,向下为y的正轴。
一、View中获取坐标相关的函数
注意:在onCreate方法中是不能获取到坐标的。
1、getX() getY()
这个是view左上角距离父布局的距离,而且这个距离可能会变化,比如使用动画将view移动的时候,这两个坐标就会发生变化。
2、getTranslationX() getTranslationY()
view相对于最初位置的变化量。始终是相对于最初的位置。
同时我们也可以使用set方法比如setTranslationX来动态改变view的位置。所以这一组坐标存在的意义就是为了view的位置变化使用的。
3、getLeft() getTop() getRight() getBottom()
这四个坐标是指一个view的边际距离父布局的距离。Getleft()和getRight()是相对父布局的左边,而getTop()和getBootom()是相对于父布局的上边。所以我们通过这四个值是可以知道view的宽度和高度的。
这三组坐标的关系:getX()= getTranslationX()+getLeft()
4、getPivotX() getPivotY()
view旋转和缩放的时候的中心点
二、MotionEvent中的坐标
1、getX(),getY()
获取视图坐标系中的坐标
2、getRawX(),getRawY()
获取android

本文介绍了Android中view坐标的系统,包括Android坐标系和视图坐标系,并详细讲解了View中获取坐标的相关函数,如getX(), getY(), getTranslationX(), getTranslationY(), getLeft(), getTop(), getRight(), getBottom()等。同时讨论了MotionEvent中的坐标获取,以及在onCreate(), onStart(), onResume()中无法获取view坐标的原因和解决方案,如在onWindowFocusChanged()方法中调用或利用ViewTreeObserver监听。"
104271539,9313187,Python中的if-elif-else与三元操作符解析,"['Python', '编程语法']
最低0.47元/天 解锁文章
1290

被折叠的 条评论
为什么被折叠?



