问题
Fling与Animation都会自动更新View位置
在自定义View过程中,这两者如果同时进行,就会发生冲突
方案
Animation过程中,暂时禁用Fling
代码
kotlin
override fun fling(velocityY: Int) {
if (!isAnimationFinished)
super.fling(0)
else
super.fling(velocityY)
}
扩展
另一种方案是,在Animation过程中,暂时禁用TouchEvent处理
这样就只会执行动画,不会有位置计算冲突了