【Android高级UI】处理Fling与Animation冲突

问题

Fling与Animation都会自动更新View位置

在自定义View过程中,这两者如果同时进行,就会发生冲突

方案

Animation过程中,暂时禁用Fling

代码
kotlin 复制代码
override fun fling(velocityY: Int) {
  if (!isAnimationFinished)
  	super.fling(0)
  else
  	super.fling(velocityY)
}
扩展

另一种方案是,在Animation过程中,暂时禁用TouchEvent处理

这样就只会执行动画,不会有位置计算冲突了

相关推荐
Kapaseker2 小时前
详解 Compose background 的重组陷阱
android·kotlin
黄林晴2 小时前
Kotlin 2.3.20-RC2 来了!JPA 开发者狂喜,6 大更新一文速览
android·kotlin
kymjs张涛16 小时前
OpenClaw 学习小组:初识
android·linux·人工智能
范特西林20 小时前
实战演练——从零实现一个高性能 Binder 服务
android
范特西林21 小时前
代码的生成:AIDL 编译器与 Parcel 的序列化艺术
android
范特西林21 小时前
深入内核:Binder 驱动的内存管理与事务调度
android
范特西林21 小时前
解剖麻雀:Binder 通信的整体架构全景图
android
范特西林21 小时前
破冰之旅:为什么 Android 选择了 Binder?
android
奔跑中的蜗牛6661 天前
一次播放器架构升级:Android 直播间 ANR 下降 60%
android
测试工坊1 天前
Android 视频播放卡顿检测——帧率之外的第二战场
android