MotionEvent的getX()和getRawX()的区别
2016-05-08 16:19
337 查看
在自定义View的过程中,我们总是会接触到MotionEvent对象,而总是会对该对象的getX(),getY()和getRawX(),getRawY()的表示的意思模糊不清,遂写下这篇博客,以便帮助和我一样,曾经被这个问题困扰的学者。
getX():表示控件相对于自己左上角为原点的X坐标
getRawX():表示相对于以屏幕左上角为原点的X坐标(该屏幕左上角是手机屏幕左上角,不管该Activity是否有titleBar或者是否是全屏)
如果对前面的解释还是不太清楚,那么不用着急,相信你在看完下面的分析后,一切疑问便会烟消云散了
。
通过上图可知:
getRawX():触摸点相对于屏幕的坐标
getX():触摸点相对于自身的坐标
getTop():按钮左上角相对于父View的y坐标
以此,可以得出getRight() = getLeft() +getWidth()
getX():表示控件相对于自己左上角为原点的X坐标
getRawX():表示相对于以屏幕左上角为原点的X坐标(该屏幕左上角是手机屏幕左上角,不管该Activity是否有titleBar或者是否是全屏)
如果对前面的解释还是不太清楚,那么不用着急,相信你在看完下面的分析后,一切疑问便会烟消云散了
。
通过上图可知:
getRawX():触摸点相对于屏幕的坐标
getX():触摸点相对于自身的坐标
getTop():按钮左上角相对于父View的y坐标
以此,可以得出getRight() = getLeft() +getWidth()
相关文章推荐
- 手机移动端WEB资源整合
- JDBC查询数据库中的数据
- 语法篇8之特性
- c++作业5
- 70. Climbing Stairs
- 数据结构——排序相关问题
- C++作业5
- [从头学数学] 第206节 优选法与试验设计初步
- java集合15--set架构
- C++第五次实验-------多继承
- mysql操作语法
- 【Cocos2d-x(2)】魔塔MagicTown第二章之人物篇
- 在执行期间制定文件位置并读取。利用BufferedReader与FileReader
- 6个关于dd命令备份Linux系统的例子
- 使用VS2015和Nhibernate实现与MySql数据库连接,实现增删改查操作
- 【BZOJ3072】[Pa2012]Two Cakes【DP】
- 62-Binary Tree Level Order Traversal
- 用Maven新建Web项目时报错
- Linux自动备份压缩MySQL数据库的实用方法
- 游戏角色 2