Android getScrollX()函数

自定义view时需用到getScrollX ()。一直不知道它得到的到底是什么。
现在有点头绪了。
看英文解释:

int getScrollX ()
Return the scrolled left position of this view. This is the left edge of the displayed part of your view. You do not need to draw any pixels farther left, since those are outside of the frame of your view on screen.
Returns
int
The left edge of the displayed part of your view, in pixels.

英文的意思是,这个返回值是view的左边缘在坐标系中的位置。
这里的左边缘是什么?坐标系又是什么?参考位置是什么?
想来想去一会儿就晕了。

做了个实验后大概明白了。

坐标系是以View为坐标系,(原来第一感觉是以手机屏幕为坐标系,可是没有理解,没有梳理通顺。也许那样理解也可以,但是我目前没有想明白,反而以View为坐标系来梳理这个过程却想通了)。

看图:

这里写图片描述

返回值其实不是英文里说的view的左边缘在坐标系中的位置,而是手机屏幕左边缘在坐标中的位置!

注意!是位置坐标,不是滑动了多少!

滑动是相对的,就记住:
getScrollX()>0是view向左滑的(手机屏幕相对向右)此时屏幕左边缘一直在x轴正方向。getScrollX()<0是view向右滑的(手机屏幕相对向左)而且此时屏幕左边缘已经在x轴负方向。
人的第一感觉是大于0,view向右,很奇怪吧。我也很奇怪,很多东西都是和人的第一认知相反,很别扭,但也得记住。记住和正常相反就行了,这也是一种学习方嘛。其实反过来以手机屏幕为对象就说通了。

X轴方向:
scrollX分析
Y轴方向:
scrollY分析

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

子林Android

感谢老板,老板大气!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值