java - 即使 setRepeatCount = 0,对象动画师也会重新启动
问题描述
我正在使用ObjectAnimator
动画WaveView的进度。
在这个方法(从我的 Activity 调用onCreate()
)中,我使用触发动画waveAnimator.start()
,waterLevel是我的WaveView
void setCurrentLevel(int currentLevelValue) {
// Animate WaveView
ObjectAnimator waveAnimator = ObjectAnimator.ofInt(waterLevel, "progress", currentLevelValue);
waveAnimator.setDuration(500);
waveAnimator.start();
}
这是我WaveView
在activity_main.xml中的
<com.john.waveview.WaveView
android:id="@+id/water_level"
android:layout_width="match_parent"
android:layout_height="550dp"
android:background="@android:color/transparent"
app:above_wave_color="@android:color/holo_blue_dark"
app:blow_wave_color="@android:color/holo_blue_light"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:wave_height="little"
app:wave_hz="normal"
app:wave_length="middle"/>
添加一个Listener
到我的ObjectAnimator
我可以看到动画开始,然后onAnimationEnd
被调用,然后动画再次开始,最终onAnimationEnd
被第二次调用。
我尝试添加waveAnimator.setRepeatCount(0)
但没有任何变化。
我究竟做错了什么?
解决方案
推荐阅读
- r - R match.call:如何将变量传递给这个函数?
- mysql - SQL 数据库更正
- sql - 如何从主表中进行选择,但使用辅助链接表替换某些行?
- c - 获取指针指向的值
- amazon-s3 - 如何防止云端缓存 307 响应
- java - 如何在使用 OpenWebStart 的 webstart 应用程序中使用 Openjfx
- c - 如何在 C 中识别哪些条目是文件,哪些是目录
- python - 将箱线图和直方图组合成一个图
- 2d - KinematicBody2D 仅向左和向右移动
- javascript - AWS-Lambda 我收到一条错误消息“MissingRequiredParameter: Missing required key 'Data' in params”但没有调用“Data”参数