正好在做一个和抖音差不多的APP,目前在刚启动阶段,先从实现一个抖音的点赞动画开始。。。爱心是从阿里的矢量图标库下载的一个爱心的Png图片,不是使用贝塞尔曲线画的。。。原因是我不会贝塞尔曲线(其实就是菜)我使用的是Androidx的包,如果使用的老的Support的包,请自行替换。代码是kotlin实现的,需要java的请自行翻译。最后使用方式,就是在xml文件中直接当成ConstraintLayout使用,就会自带点赞效果了。
观察一下抖音的点赞效果,实际上就是双击2下以上会触发那个点赞的动画,然后包含先从大缩小到正常大小再放大,随机的左右摇摆的动画,还有渐变的动画。所以我们只需要继承ConstrantLayout在Ontouchevent方法中实现动画就OK了。
代码如下
package tracyeminem.com.peipei.view
import android.animation.*
import android.content.Context
import android.os.SystemClock
import android.util.AttributeSet
import android.view.MotionEvent
import android.view.View
import android.view.animation.LinearInterpolator
import android.widget.ImageView
import androidx.constraintlayout