MotionEvent的getX()和getRawX()的区别

在自定义View的过程中,我们总是会接触到MotionEvent对象,而总是会对该对象的getX(),getY()和getRawX(),getRawY()的表示的意思模糊不清,遂写下这篇博客,以便帮助和我一样,曾经被这个问题困扰的学者。

getX():表示控件相对于自己左上角为原点的X坐标

getRawX():表示相对于以屏幕左上角为原点的X坐标(该屏幕左上角是手机屏幕左上角,不管该Activity是否有titleBar或者是否是全屏)

如果对前面的解释还是不太清楚,那么不用着急,相信你在看完下面的分析后,一切疑问便会烟消云散了大笑


通过上图可知:

getRawX():触摸点相对于屏幕的坐标

getX():触摸点相对于自身的坐标

getTop():按钮左上角相对于父View的y坐标

以此,可以得出getRight() = getLeft() +getWidth()

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值