Touch事件

为什么scrollerTo滑动方向是反的?

scrollTo(x,y)

—>

int oldX = mScrollX;

int oldY = mScrollY;

mScrollX = x;

mScrollY = y;

invalidate(true);

—> draw()方法调用

—>invalidate(int l, int t, int r, int b)

—>

final int scrollX = mScrollX;

final int scrollY = mScrollY;

tmpr.set(l - scrollX, t - scrollY, r - scrollX, b - scrollY);

结论:当scrollTo 传入 正数  向左(向下)

当传入负数,减去负数==加上正数 ,向右(向上)

Scroller是什么?作用?用法

这个类封装了滑动,响应手指滑动,但它们不会自动将这些位置应用到您的View中。开发者的责任是获得和应用新的坐标率,将使滚动动画看起来平滑。

基础用法:

创建Scroller的实例

调用startScroll()方法来初始化滚动数据并刷新界面

重写computeScroll()方法,并在其内部完成平滑滚动的逻辑

getCurrX() 当前的滑动位置

getScrollX()是什么?

returen  mScrollX

返回view的左边缘  如果getScrollX()小于0超出了屏幕,不考虑

MotionEvent.ACTION_MOVE返回false和true,分别有什么影响?

拿到最小滑动距离怎么判断?

事件分发,大概流程,activity,viewgroup,view分别返回值对事件的影响

VelocityTracker是什么?作用?用法

用法:VelocityTracker维护了一个Pool池,池化技术

初始化VelocityTracker.obtain()

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容