微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Android View体系

一、View的基础坐标基础

1.Android坐标系:

Android坐标系将屏幕的左上角的顶点作为Android坐标系的原点,向右为X轴的正方向,向下是Y轴的正方向。
在触控事件中:getRawX() 和 getRawY() 获得的坐标也是Android坐标系的坐标。

在这里插入图片描述

2.视图坐标系

android中的另外一个坐标系叫做视图坐标系,它描述的是子视图在父视图中的位置。我用drawIo画了张图。

![在这里插入图片描述](https://img-blog.csdnimg.cn/4cf7d494622d476caff5c2f02d65c415.png


注意:要区分View获取位置信息的方法和MotionEvent获取位置信息的方法

先说结论:

View常用的几种方法获取View的坐标:

1 . View原始状态时相对于父容器的坐标:

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

注意:这四个值一旦确定,不会再变化

2 . 获取View左上角相对父容器的位置

  • View.getX()
  • View.getY()

注意:这两个值会随着View位置变化而改变

也就是说,当View没有发生平移操作时,View.getX() =View.getLeft(),View.getY()=View.getTop()。

3 . View左上角相对于父容器偏移量

  • View.translationX
  • View.translationY

也就是说:translationX = getX() - getLeft()
当View未发生平移操作时,translationX 与translationY都为0。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐