关于滑动View
###Android 滑动View的原理
####滚动是View本身的属性
View的窗口和内容的区别。View窗口显示的是view的内容的mScrollX、mScrollY。
####View是如何更新视图的
- draw方法会根据mScrollX、mScrollY去绘制。
- 在绘制之前,会调用computeScroll方法。
####关于scrollTo、scrollBy
- scrollTo、scrollBy的方法的实质,就是改变mScrollX和mScrollY.
####关于computeScroll的作用
- scrollTo、scrollBy是直接滑动目标位置的,这对用户体验不好。
- computeScroll就提供了滑动的过程中,再次滑动的机会。
####关于Scroller类
- 作为辅助类,提供更好的交互优化。其实它更像一个Util方法。
- startScroll方法和fling方法,只是记载开始滑动的时间。
- 然后在computeScroll里调用scroller的computeScrollOffset方法来计算应该滑动的距离。然后方便开发者调用scrollTo、scrollBy方法, 后刷新view。这样就会再次调用computeScroll实现循环渐进滑动