Android Scroll往相反方向原因剖析

Android Scroll往相反方向原因剖析

以前一直有个困惑,为什么mSrcollX=100的时候,图像不是往右移动,而是左呢?

以前有过一个理解现在看来也是跟个小学生似的,现在把这个新的理解记录下来。

关于滑动,先要理解三个事物:
- View:控件,滑动是不会改变view的位置的。
- Canvas:画布,View要显示的东西也全画在Canvas上。
- window:窗口,画布那么大,控件要显示画布的那一部分。

这三者的关系,一个控件是现实画布中的内容的,这个画布是无限大的,但是控件却是有限的。这时候窗口就来解决控件到底要显示画布的那一部分的问题了。意思就是:窗口开在画布的哪里,控件就显示哪里,并且窗口是可以移动的,理解好这点很重要。

那么接下来就来说明,为什么mScroll为正的时候,图像往后跑了。当mSrcoll=100时,实际上是吧窗口往右移动100,往右是毫无疑问的,不过重点是移动的是窗口,窗口,窗口(重要的事情);那么发挥一下你的想象力,相对于画布以及窗口两个物体来说,窗口往右移动,那么以窗口为参照物,画布是往什么方向移动的?答案:左。答案出来了。这里不需要去想控件是什么存在,她就固定在那里,窗口能看到什么它就显示什么。

画个图加深理解:
这里写图片描述

有理解错的地方还望指点一下。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值