我正在尝试编写一个模仿类似于此的脉冲动画的动画:
专注于内部蓝色圆圈(忽略外部深蓝色圆圈)
http://www.joedubs.com/wp-content/uploads/2016/01/breathe-now.gif
这是我到目前为止编写的代码:
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false">
<scale
android:duration="2000"
android:fromXScale="1"
android:fromYScale="1"
android:pivotX="50%"
android:pivotY="50%"
android:toXScale="0.8"
android:toYScale="0.8" />
<scale
android:duration="2000"
android:fromXScale="0.8"
android:fromYScale="0.8"
android:pivotX="50%"
android:pivotY="50%"
android:startOffset="2000"
android:toXScale="1.8"
android:toYScale="1.8" />
<scale
android:duration="2000"
android:fromXScale="1.8"
android:fromYScale="1.8"
android:pivotX="50%"
android:pivotY="50%"
android:startOffset="2000"
android:toXScale="1"
android:toYScale="1" />
</set>
虽然这在某种程度上起作用,但动画再次重复时会跳过并且断断续续。有人可以调整一下来模仿平滑的脉冲动画吗? (成长和减少)
答案 0 :(得分:0)
你可以像这样添加一个ObjectAnimator,在反向模式下创建一个脉动效果:
push()
另一种实现具有CustomClass并覆盖OnDraw方法的方法,创建增加或减少增加变量并调用invalidate()的效果。我在另一篇文章中做了这些,以使我的按钮背景增长,如果你想按照这种方式,它对你有用。